Articles of sql server

什么是我所有的记忆?

解决scheme:在这个线程中有很多东西需要阅读,所以我只是总结一下。 问题是VMWare ESX气球驱动程序“膨胀”了操作系统看到的“正在使用”的内存量,以强制操作系统转储caching并减less工作集大小。 这会创build大量“使用中”的物理内存,通过查看进程无法解释。 您可以查看VM的VMWare控制台性能图,并查看正在使用的气球驱动程序。 性能的解决scheme是提高服务器的预留内存量,这会限制气球驱动程序从您那里窃取的内存量。 我有一个32位Windows 2003terminal服务器运行本地副本的SQL Server(完整版本,不expression),并为几个开发人员承载一个Visual Studio 2008开发环境。 这些机器是在vSphere 4上运行的虚拟机,分配有4GB的内存。 当我有2或3个用户login时,它使用了超过4GB的提交内存,但我似乎无法find大部分内存正在使用。 当我在所有用户的任务pipe理器中加起来的所有内存时,最多只占2GB左右。 剩下的是什么? 我试过循环SQL服务器,只是把我看到分配给SQL服务器的内存。 Visual Studio也是如此,如果我closures它,它只会将我在Task Manager中看到的数量从提交的内存池中分配出来。 我还设置了SQL Server的内存选项,最多只能使用512MB。 我不相信这是一个系统或文件caching问题,因为Windows不包括提交的统计信息AFAIK中的内存。 这让我疯狂。 所有这些东西应该有足够的记忆,根据他们似乎正在使用的数量。 如何find这个额外的内存正在使用? 更新 关于我在看哪个内存统计,没有一个加起来。 例如,现在有1个用户login,只运行Visual Studio和WebDev服务器,SQL Server和IIS在后台..我加起来私人字节,我得到大约1049740K的内存,但任务pipe理器说,提交费用是1146M,剩下约150Mb下落不明。 当3个用户login时,只有大约2GB的私有字节(大量的内存被共享,因为用户正在运行Visual Studio)。 虚拟机大小也不相加,因为这通常没有私人字节那么多。 尽pipe奇怪的是,在Process Explorer中虚拟内存的数量与在任务pipe理器中的数量是非常不同的。 PE显示SQL Server的虚拟内存为1,791,444K,Visual Studio为1,251,432K,但是机器的总计只有1146M。 在任务pipe理器中没有WS大小的列,但是在PE中,它将WS列为私有和可共享,并且这些数字显着小于提交费用,甚至加起来。 更新: 我知道这个问题有很多细节,所以也许问题不清楚。 我如何find哪些进程正在使用我系统中所有提交的内存? 由TaskManager和Process Explorer提供的内存不能正确合并,即使提交了4GB,也只显示大约2GB的已提交内存。

通过VPN的SQL Server 2008 R2事务复制

我无法通过VPN设置复制。 我在Windows 2008 R2服务器上安装了SQL Server 2008 R2企业版数据库。 SQL Server在非标准端口上运行。 我已经设置它,以便它作为其自己的分销商,并在此服务器上configuration了发布者。 它被设置为可更新的跨国出版物(是的,这是必要的)。 在此服务器上,我启用了路由和远程访问以便能够build立VPN连接。 它configuration了一个静态IP地址池,其中范围中的第一个始终分配给服务器。 我已经给testing用户分配了一个在这个范围内的静态地址(我不知道这是否有必要)。 所有客户端都将是2008 R2版本,但可以是SQL Express或完整产品的独立开发者实例。 我可以从客户端build立一个没有问题的VPN连接,并可以看到正确的IP地址被分配。 在连接到数据库以testing我可以build立连接之后,我意识到我需要能够使用服务器名称而不是IP地址连接到数据库 – 复制所需的IP地址 – 最初不起作用。 我使用服务器的NETBIOS名称在客户机的主机文件中创build了一个条目,现在我可以使用SERVER\INSTANCE, PORT语法通过VPN从客户机连接到服务器。 因为它是服务器上的默认实例,所以我也可以简单地使用SERVER, PORT语法进行连接。 毕竟,我仍然得到以下可怕的错误: SQL Server replication requires the actual server name to make a connection to the server. Connections through a server alias, IP address, or any other alternate name […]

SQL Server群集性能

任何人都可以帮我回答我希望是一个非常简单的问题吗? 假设我有一个运行在SQL Server数据库上的应用程序,并且正在运行性能testing。 如果我设置数据库服务器群集,我应该期望提高性能吗? 还是这样“只是”给我更好的时间和可用性特点与故障等? 我倾向于认为后者,所以如果我觉得数据库性能很差,我应该在我的应用程序devise上工作,而不是购买额外的硬件。 问候,埃米尔

数据库移到SQL 08后发生Sharepoint数据库问题

最近我们已经把我们的sharepoint 2007 db从sql 2000 server移到了2008 x64 SQL server。 一切似乎很好,但是有一个问题,SQL服务器停止运行,服务必须重新启动。 错误提到内存不足等。我试图启动数据库使用-g384这是默认的SQL 2000,但256是默认的2008年,我相信。 这并没有纠正这个问题。 我被告知,也许这个问题可以通过升级到WSS 3.0 SP2来纠正,但是当我试图安装这个我得到另一个错误发布SP2更新,并不得不引用回虚拟快照。 服务包后的错误是服务器错误: http : //go.microsoft.com/fwlink?LinkID=96177所以我想我有几个问题如何解决第一个问题和第二个问题。 我已经检查了很多论坛和post,并尝试了一些东西,仍然没有喜悦。 任何援助将是伟大的。 更新我已经修复了服务器错误: http : //go.microsoft.com/fwlink? LinkID=96177我需要运行wss sp2以及办公室服务器sp2然后configuration向导然后苔藓configuration工作。 我在SQL中得到的错误是 SQL Server无法运行新的系统任务,因为内存不足或configuration的会话数超过服务器允许的最大数量。 validation服务器是否有足够的内存。 使用带有“用户连接”选项的sp_configure来检查允许的最大用户连接数。 使用sys.dm_exec_sessions来检查当前的会话数量,包括用户进程。 向客户端发送数据时,对大对象的读取操作失败。 造成这种情况的一个常见原因是应用程序运行在READ UNCOMMITED隔离级别。 连接将被终止。 资源池“内部”中没有足够的系统内存来运行此查询。 这些错误是由作为Sharepoint服务创build的用户创build的。

OLE DB提供程序“SQLNCLI10.1”尚未注册。 42000

我有一个SQL Server 2008分析服务项目。 在数据源视图中,我有一个命名查询引用包含三个表的单个数据源。 项目成功处理,可以浏览多维数据集。 我最近添加了第二个数据源到数据源视图,并将表链接到原始的命名查询。 当我尝试处理该项目时,我收到以下消息: OLE DB错误:OLE DB或ODBC错误:OLE DB提供程序“SQLNCLI10.1”尚未注册。 42000。 两个数据源的连接string都使用SQLNCLI10.1

SQL作业不能访问Microsoft Excel DCOM应用程序。 权限已设置。 是什么赋予了?

我有一个SQL作业运行一个VB脚本,使用Microsoft Excel DCOM应用程序提供的对象。 Excel 2003已安装并正在运行。 SQL Server和SQL代理都在mydomain \ thataccount下运行。 错误是: 机器默认权限设置不授予对CLSID {00024500-0000-0000-C000-000000000046}的COM服务器应用程序的本地激活权限给用户mydomain \ thataccount从地址LocalHost(使用LRPC)的SID。 可以使用组件服务pipe理工具修改此安全权限。 以下发现使得这一点变得困难。 mydomain \ thataccount在组件服务DOCconfiguration中的DCOM应用程序上具有完整的启动和激活权限,访问权限和configuration权限。 错误(上面)声称它不。 如果我授予“所有人”完全访问所有types,错误不会改变。 如果我使SQL代理运行在另一个帐户(mydomain \ otheraccount)下,错误仍然抱怨mydomain \ thataccount没有权限。 显然,作业在SQL Server凭证而不是SQL代理凭证下运行。 我没有更改SQL Server下运行的帐户,因为启动SQLconfigurationpipe理器时,我得到了这个错误(这可能或可能不相关): 无法连接到WMI提供程序。 您没有权限或服务器无法访问。 请注意,您只能使用SQL Serverconfigurationpipe理器来pipe理SQL Server 2005和更高版本的服务器。 无效的类[0x80041010] 如果我将mydomain \ thataccount添加到本地pipe理员组并重新启动SQL Server,则该作业将工作 。 这意味着pipe理员有权使用DCOM应用程序,但非pipe理员用户不具有权限。 要重申:即使“everyone”被授予对DCOM应用程序的完全访问权限,该错误也表示mydomain \ thataccount没有访问DCOM应用程序的权限。 有任何想法吗? (我开始相信Windows / SQL安装有问题。) Microsoft®WindowsServer®2008 Enterprise版本:6.0.6002架构:64位状态:完全可见物理内存:3,927 MB Windows Service […]

升级到SQL Server 2008之后,数据库日志文件增长不成比例

从SQL2005升级到2008 SP1之后,我们突然观察到在大事务期间数据库日志文件的不成比例的扩展。 例如:在表B中插入7500万行,在同一事务中删除表A中相同的75M行。 数据总量约为20GB的20倍,但数据库日志文件增长到150GB甚至更多。 在升级之前从未在SQL2005中看到过。 我无法find任何地方的SQL2008已知的回归logging..任何人也看到了这一点? 谢谢 马克斯

SQL全文索引不填充

我们在Windows 2008上安装了集群SQL 2005安装,并从另一台机器上重新安装了SAN驱动器,并恢复到新硬件的迁移。 有一些小问题,但这个有我卡住。 尝试填充全文索引不起作用。 我在一个新的数据库中用一些简单的文本创build一个基本的表格,并获得与旧索引相同的结果。 2010-09-27 10:30:46.85 spid19s Informational: Full-text Full population initialized for table or indexed view '[SQL_DBA].[dbo].[CIS_Report_Executions]' (table or indexed view ID '1767677345', database ID '5'). Population sub-tasks: 1. 2010-09-27 10:31:15.36 spid19s Error '0x80070003' occurred during full-text index population for table or indexed view '[SQL_DBA].[dbo].[CIS_Report_Executions]' (table or indexed view ID '1767677345', database […]

我是否需要备份SQL Serverencryption密码和对称密钥?

我试图设置SQL Server在一些敏感数据上使用单元级encryption。 在MSDN上的这个例子看起来很简单: 使用强密码创build主密钥。 创build一个证书。 用证书创build一个对称密钥。 按照需要使用EncryptByKey函数对数据进行encryption,如下所示: EncryptByKey(Key_GUID('SensitiveData_Key_01'), MySensitiveDataColumn) 使用DecryptByKey函数解密数据,如下所示: CONVERT(varchar, DecryptByKeyAutoCert(cert_ID('MyCertName'), NULL, MySensitiveDataColumn)) 所以考虑到上面的用法,假设我的服务器死了。 我需要在全新的Windows机器(或VM)上重新安装SQL Server,并从备份恢复数据库。 如果我恢复数据库备份将encryption/解密继续正常工作? 如果没有,我需要保存/备份哪些数据才能在发生灾难性故障的情况下恢复数据? 从另一个关于encryption层次结构的MSDN文章的图表来看,我的猜测是我需要备份下面的一些或全部内容: 主密钥的密码 主密钥? 证书? 对称密钥?

SSMS卡住脚本数据库对象

在脚本化数据库中的所有对象之后,SQL Server Management Studio将陷入困境。 除了不编写数据库中的所有对象。 我从SQL Server Management Studio(三次)编写SQL Server 2008数据库中的所有对象: 它说它把所有的东西都编成脚本,除了它实际上没有完成 – 坐在那里卡住: 它设法编写三个对象: 但不是所有的对象。 你会注意到: 用户界面说,它成功地编写了所有189个对象 UI卡住了; closuresbutton被禁用 包含“成功”编写脚本的数据库对象的文件夹不包含所有成功编写脚本的数据库对象。 这引出了一个问题: 如何在SSMS中编写SQL Server 2008数据库的对象? 更新 :它可以编写任何VIEW , STORED PROCEDURE或FUNCTION ,而不会出现问题。 但是,如果我select脚本只是第一个表,它会失败: 它也失败,如果我脚本表: A – M O – Z A – G 这个永无止境的bug是我们购买SQL比较四年前的原因; 你不能相信微软的工具来正确地脚本化数据库(默默地忽略表格)。 更新:脚本选项 以下是使用中的一组脚本选项 ANSI填充:正确 附加到文件:False 在Error:False上继续脚本 将UDDT转换为基本types:False 为从属对象生成脚本:False 包含描述性标题:确实 包括如果不存在:False 包含系统约束名称:False 模式限定对象名称:真 […]