小编mar*_*c_s的帖子

SQL Server 2008 R2 安装客户端工具连接

在 SQL Server 2008 R2 安装过程中,我看到“客户端工具连接”和“客户端工具向后兼容性”安装选项的复选框。它说这些是客户端服务器通信的组件。谁能解释一下这些组件是什么?当您选择这些组件时,服务器上实际安装的是什么。

sql-server-2008-r2

9
推荐指数
1
解决办法
2万
查看次数

数据库在线时可以复制数据库的文件吗?

我正在 SQL Server 2008 R2 SP1 上设置生产数据库的开发副本。目前,两个开发人员很少使用实时数据库进行只读查询,但新数据库也会对其进行更新。

由于数据库是 2.1TB,总共需要 3 天时间来恢复和更新到我们测试所需的最新版本,我最初的计划是创建一组新的备份文件,然后从这些文件中恢复。这将允许我在同一 SQL 实例和机器上创建数据库的开发副本,而不必使当前数据库脱机。

但是,为了节省这几天的时间,我认为只复制物理数据库文件并附加数据库的新副本可能是个好主意。不幸的是,当我尝试复制时,我收到一个错误,指的是 SQL Server 对这些文件的锁定。

由于除了传输日志文件之外我无法将数据库脱机(我可以在人们早上进入之前完成此操作),有什么方法可以复制实时数据库文件而不将数据库置于脱机状态?还是应该等到人们回家后再做?

sql-server sql-server-2008-r2

9
推荐指数
1
解决办法
3万
查看次数

VARCHAR 主键 - MySQL

目前,我有一个categories包含 2 列的表 -category VARCHAR(50) NOT NULL PRIMARY KEYparent VARCHAR(50). 该parent列是该列的外键 (FK) category

这似乎是最明显的方法。但是,警钟在我的脑海中响起,因为我使用一VARCHAR列作为主键,这可能会在查询表时减慢操作速度。

我可以引入名为cat_id INT AUTO_INCREMENTPK的第三列,但它会引入一个没有意义的新列。

除了哪个更快,还应该考虑哪些其他因素?

NB我预测最多会有1000个类别左右,所以行数不是很高。但是,categoriesPK 列将成为其他表中许多外键的引用列。

我也应该使用(唯一的)用户名作为 PK 吗?

mysql performance foreign-key primary-key varchar

9
推荐指数
2
解决办法
2万
查看次数

检查何时将行插入到 SQL Server 上的表中?

是否可以检查何时将特定行插入到 SQL Server 中的特定表中?如果这有帮助,该表有一个索引。

我需要为已经插入行的现有表执行此操作。

谢谢。

sql-server

8
推荐指数
1
解决办法
2万
查看次数

SQL Server 事务日志文件拒绝增长

问题:我在 1 TB 驱动器上有一个 SQL Server 数据库。即使MAXSIZE设置的比 5 MB 大得多,日志也不会超过 5 MB。

收到错误:

数据库 'Temp' 的事务日志已满。要找出无法重用日志中的空间的原因,请参阅 sys.databases 中的 log_reuse_wait_desc 列

问题:

  1. 我该如何解决?
  2. 为什么会这样?

代码:

CREATE DATABASE Temp ON PRIMARY(
       NAME = Temp
       , FILENAME = 'C:\\Temp.mdf'
       , SIZE = 2MB
       , FILEGROWTH = 10%) 
LOG ON (
       NAME = Temp_Log
       , FILENAME = 'C:\\Temp.ldf'
       , SIZE = 1MB, MAXSIZE = 70MB
       , FILEGROWTH = 10%)
Run Code Online (Sandbox Code Playgroud)

结果select name, log_reuse_wait_desc from sys.databases where name = 'temp';

名称,log_reuse_wait_desc
温度,什么都没有 …

sql-server transaction-log

8
推荐指数
1
解决办法
3021
查看次数

服务器崩溃后如何恢复复制

我们在一个 SQL Server 2005 实例上有两个数据库,它们之间有事务复制(3 个表作为文章)。该服务器同时充当发布者和分发者。

然后服务器上的 RAID 失败。然而,我们设法.mdf在崩溃之前分离并复制了几乎所有文件。

系统恢复后,我们重新安装了SQL Server,恢复了系统数据库(master、model、msdb)并将.mdf文件放在相同的路径下。于是开始了。

问题出现在复制中。在本地发布文件夹是空的,虽然本地订阅文件夹包含有问题的订阅。当我尝试添加新出版物时,我得到了:

新发布向导在检索发布名称时遇到一个或多个错误。

执行 Transact-SQL 语句或批处理时发生异常。(Microsoft.SqlServer.ConnectionInfo)

无效的对象名称“dbo.syspublications”。(Microsoft SQL Server,错误:208)

我决定尝试删除左订阅(最终我设法)并禁用服务器上的发布和分发,这给了我:

SQL Server 无法禁用“someserver”上的发布和分发。

无效的对象名称“dbo.syssubscriptions”。EXECUTE 之后的事务计数表示缺少 COMMIT 或 ROLLBACK TRANSACTION 语句。先前计数 = 0,当前计数 = 1。 EXECUTE 之后的事务计数表示缺少 COMMIT 或 ROLLBACK TRANSACTION 语句。先前计数 = 0,当前计数 = 1。 EXECUTE 之后的事务计数表示缺少 COMMIT 或 ROLLBACK TRANSACTION 语句。先前计数 = 0,当前计数 = 1。 EXECUTE 之后的事务计数表示缺少 COMMIT 或 ROLLBACK TRANSACTION 语句。先前计数 = 0,当前计数 = 1。 EXECUTE 之后的事务计数表示缺少 COMMIT 或 ROLLBACK …

replication sql-server-2005 sql-server transactional-replication

8
推荐指数
1
解决办法
3888
查看次数

默认关闭 CHECK_POLICY

我们从 SQL Server 2000 迁移到 SQL Server 2005。我无法更改的客户端软件创建了一个没有选项的用户

CHECK_POLICY = OFF;
Run Code Online (Sandbox Code Playgroud)

创建用户后,我必须运行命令

ALTER LOGIN username WITH CHECK_POLICY = OFF;
Run Code Online (Sandbox Code Playgroud)

按照建议禁用该策略,我不能。

是否可以禁用CHECK_POLICY没有她的CREATE LOGIN用户创建的默认值CHECK_POLICY = OFF

sql-server-2005 sql-server

8
推荐指数
1
解决办法
5573
查看次数

创建具有较大初始大小的新数据库

我想创建一个包含 200GB 数据文件 ( .mdf) 和 50GB 日志文件 ( .ldf)的新数据库。

但是它很慢(大约15分钟,仍然没有创建)。而且非常耗时。这是正常的吗?如果是,它做什么需要时间?我可以提高它的创建速度吗?

我正在使用 SQL Server 2008 R2、Windows Server 2008R2、16GB RAM(我在 ssms 中将其限制为 12GB)和 Core i7 Cpu

sql-server

8
推荐指数
2
解决办法
5118
查看次数

SQL Server:如何创建只能从特定 HOSTNAME 或 IP 地址访问的用户

我有一个我依赖的愚蠢的应用程序,里面有硬编码的连接字符串。

为了提高我的 SQL Server 的安全性,我想让 SQL 用户与内部应用程序的硬编码相同,但我希望该用户只能从特定主机(IP 地址)使用 SQL Server。

security sql-server sql-server-2012

8
推荐指数
1
解决办法
8478
查看次数

SQL Server TDE 的替代方案

由于包含透明数据加密功能的 SQL Server 企业版成本高,我正在寻找替代产品,但只找到了几个选项:

任何人都可以提供他们对上述任何一种产品的体验的详细信息(性能影响、易用性等)?

SQL Server TDE 的任何其他替代方案?

注意:我们目前使用的是 SQL Server 2008 R2 标准版。

sql-server sql-server-2008-r2 encryption transparent-data-encryption

8
推荐指数
1
解决办法
9046
查看次数