我正在考虑将 PostgreSQL 用于一个项目,因为它是免费的,人们说它很好,但我需要在我的数据库中进行一些加密。我做了一些搜索,我在 PostgreSQL 中找到了这些选项:
我不知道什么是“最安全”,你们能帮我解决这个问题吗?在这种情况下,我更喜欢稍微慢一点的安全性,而不是速度和一点安全性。
在这种情况下,我猜加密比“只是”散列密码要好,并且在 db 上确实需要它。我需要对我的用户的登录信息进行强加密。难点不是如何存储,而是如何通过加密来保护它。
这将在 MySQL 中。表由以下字段组成:
Date, ID, blah, blahblah, blahblahblah
Run Code Online (Sandbox Code Playgroud)
我相信主键需要是日期和 ID。
我要运行的查询是针对每个Date,计算所有IDs但仅当这是 ID 显示的最后日期时。
因此,如果该 ID 在 2016 年 9 月 9 日出现在数据库中,但没有出现在 2016 年 9 月 10 日,那么我们会说它消失了,因此将其添加到 2016 年 9 月 9 日的总计数中。
如果该 ID 稍后在 9/11/16 再次出现,当我们再次运行查询时,该 ID 将不再添加到 9/9/16 的计数中。如果在 2016 年 9 月 12 日该 ID 再次消失,那么它将被添加到 2016 年 9 月 11 日的计数中。
这是一些示例数据。我没有为“废话”输入任何数据,因为它与查询无关(我相信):
日期,身份证,等等,等等,等等 2016 年 9 月 8 日,1 2016 年 9 月 8 日,2 2016 年 9 月 8 …
MySQL 可以正常运行数周或数天,然后突然且没有任何用户操作,所有连接尝试都开始失败。这是/var/log/mysqld.log:
160916 14:42:01 [Note] /usr/libexec/mysql55/mysqld: ready for connections.
Version: '5.5.51' socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Community Server (GPL)
160930 03:05:51 mysqld_safe Number of processes running now: 0
160930 03:05:52 mysqld_safe mysqld restarted
160930 3:05:53 [Note] /usr/libexec/mysql55/mysqld (mysqld 5.5.51) starting as process 8961 ...
160930 3:05:53 [Note] Plugin 'FEDERATED' is disabled.
160930 3:05:54 InnoDB: The InnoDB memory heap is disabled
160930 3:05:54 InnoDB: Mutexes and rw_locks use GCC atomic builtins
160930 3:05:54 InnoDB: Compressed tables use zlib 1.2.8 …Run Code Online (Sandbox Code Playgroud) 我正在使用 SQL Developer,现在可以使用,SELECT但无法查看列表中的这些表。为了查看表格,我需要做一些配置吗?用户具有选择所有表的权限。
我在我自己的用户下扩展树,而不是在拥有表的用户下。
我正在用 C# 创建一个 Windows 服务,它将在我们的系统上运行,以便在凌晨 3 点到 5 点之间在我们的数据库上运行备份。
我首先创建了一个方法,当 SQL 语句传递到备份方法时,该方法基本上会运行备份,如下所示。
private void BackupData()
{
try
{
RunBackupSQL("INSERT IGNORE INTO new table_backup SELECT * FROM current table",
"Backup current table data");
Run Code Online (Sandbox Code Playgroud)
然而,这是一次做 1 个表。我需要为具有超过 56 个不同表的 5 个数据库执行此操作。
我想知道是否有一种方法可以创建一个 SQL 命令来获取每个数据库中的所有表并进行备份,以便只有 5 个 SQL 语句而不是 56 个?
我工作的公司希望以这种方式完成,因为他们当前的备份系统非常困难,因为它加密了所有内容并且很难再次提取数据。我需要完全在不同的数据库上创建备份,以便有效地创建当前的快照。
它需要在每天凌晨 3 点到 5 点之间运行一次,因此实际上在这些时间范围之外所做的任何更改都将在计时器启动时被拾取,并会覆盖其他数据库。我需要备份服务器中的 5 个数据库,因此实际上我需要复制到 5 个数据库。因此,如果当前数据库出现任何问题,我们就有一个可以带回来的精确副本。它将创建新的 dbs,然后每次更改当前的 dbs 时,它都会运行计时器,该计时器会将更改发送到新的 dbs 并不断执行此操作。
它是 MySQL。仅供参考,我目前是一名学徒,所以他们可能希望我使用 Visual Studio 将其作为 C# 中的项目形式来让我创建 Windows 服务。
我需要计算日期之间的天数。我有这个查询,它获取问题解决的日期。子查询选择创建问题的日期。
问题是子查询会查询所有已打开问题的日期,而不是获取具有相同问题的日期INCIDENCIA.ID_INCIDENCIA:
SELECT
INCIDENCIA.ID_INCIDENCIA AS Incidencia,
INCIDENCIA.DESCRIPCION,
SITUACION.FECHA,
SITUACION.FECHA - Inicio.Fecha AS Dias
FROM
INCIDENCIA,
SITUACION,
(SELECT SITUACION.FECHA AS Fecha
FROM SITUACION, INCIDENCIA
WHERE SITUACION.ID_ESTADO = '1' AND INCIDENCIA.ID_INCIDENCIA = SITUACION.ID_INCIDENCIA) Inicio
WHERE
SITUACION.ID_ESTADO = '3' AND
INCIDENCIA.ID_INCIDENCIA = SITUACION.ID_INCIDENCIA
ORDER BY
INCIDENCIA.ID_INCIDENCIA ASC
Run Code Online (Sandbox Code Playgroud)
预期的结果是:
??????????????????????????????????????????????????? ? 1 ? 13 年 10 月 16 日?Averia 路由器 ? 30 ? ? 2 ? 16 年 11 月 16 日?法洛红?28 ? ? 3 ? 22/10/16 ?萨拉请求?37 ? ? 4 ? …
我想计算两个日期之间的范围,就像这个例子:
代理 | 登录_开始 | 登录_END --------+----------------------+---------------- --- 101 | 2016-01-01 06:00:00 | 2016-01-01 06:29:59 102 | 2016-01-01 06:00:00 | 2016-01-01 08:20:00 103 | 2016-01-01 06:00:00 | 2016-01-01 06:01:00 101 | 2016-01-01 10:00:00 | 2016-01-01 10:01:00 101 | 2016-01-01 10:02:00 | 2016-01-01 10:03:00
...并在 30 分钟和代理之间分开几个小时,只是一个例子:
时间 | LOGIN_QTY ---+----------- 06:00 - 06:30 | 3 06:30 - 07:00 | 1 07:00 - 07:30 | 1 07:30 - 08:00 | 1 08:00 - 08:30 | 1 10:00 - 10:30 | 1 …
这是我当前的 SQL Server 查询,几乎是我想要做的:
select "dokumentgruppe" + ', ' + convert(varchar(10), dokumentgruppenr)
+ ', ' + 'Parent:' + convert(varchar(10), parentgruppenr)
as "Dokumentgruppe"
from "dbo"."dokumentgruppe"
where aktiv = '1'
order by "Dokumentgruppe"
Run Code Online (Sandbox Code Playgroud)
它给了我这个结果:
Budsjetter, 29, 家长:0 电子邮箱, 36, 家长:0 Fyllearrester, 40, 父母:38 Inngående, 42, 父母:36 JuksOgFanteri, 38, 家长:0 Legeattester, 39, 家长:38 林宁, 26, 家长:0 Periodiske regnskapsrapporter, 30, 家长:0 Permanente opplysninger, 23, 家长:0 Produksjon Fakturing, 33, 家长:0 Produksjon Lønn, 32, 家长:0 Produksjon Regnskap, 31, 家长:0
问题是,我想说明的实际名称的Parentgruppe替代ParentgruppeID。该 …
当我运行命令时DBCC LOGINFO,一些Status行包含 2。
现在我想检查为什么我的事务日志不能被截断。我怎么看这个?2 是否意味着Status它们不可重用或操作正在等待(备份、恢复)?是说不能截断吗?
我有一对在两个不同子网中运行的 SQL Server(在 AWS 中,如果重要的话)和几个我想在基本可用性组中运行的数据库。
我的理解是,在 SQL Server 2016 Standard 中,每个数据库都需要一个单独的可用性组。此外,至少在用户界面中,AG 侦听器似乎只能属于单个可用性组。
当我尝试为另一个 AG 侦听器重用 IP 地址时出现错误(即,将 10.0.0.1 和 10.0.1.1 用于 AG 侦听器 LISTENER1 和 LISTENER2)
我真的需要为每个 AG 以及每个数据库创建一个具有两个唯一 IP 地址的单独 AG 侦听器,还是有办法重用 IP 地址或 AG 侦听器?
mysql ×3
sql-server ×3
oracle ×2
postgresql ×2
backup ×1
c# ×1
dbcc ×1
encryption ×1
mysql-5.5 ×1
mysqld ×1
oracle-11g ×1
security ×1