Articles of sql server

什么是“n”数据库?“n”代表什么?

USE [master] GO /****** Object: Database [assist] Script Date: 11/13/2010 20:17:49 ******/ CREATE DATABASE [assist] ON PRIMARY ( NAME = N'assist', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.THIRD\MSSQL\DATA\assist.mdf' , SIZE = 2304KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB ) LOG ON ( NAME = N'assist_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.THIRD\MSSQL\DATA\assist_log.LDF' , SIZE = 504KB […]

数据库在SQL Server Management Studio中不可见

一个同事通过在SSMS(SQL Server 2005)中执行还原来覆盖生产数据库的testing数据库。 他意识到他已经错误地设置了恢复path并取消了操作。 此时数据库从SSMS消失。 testing数据库.mdf和.ldf文件仍处于预期位置。 我以为数据库已经分离,并试图重新连接它。 我收到错误“无法附加与现有数据库同名的数据库”。 我试图连接到数据库使用sa和Windowslogin的各种客户端没有成功。 我们尝试重新启动SQL Server并重新启动服务器,但testing数据库不再出现。 日志中唯一有趣的事情是三个条目说SQL Server遇到caching存储刷新的事件。 我的SQL Server知识是有限的。 有关如何让我们的testing数据库再次工作的任何想法或删除它的所有迹象,所以我可以用相同的名称重新创build它?

维护窗口和恢复大型数据库

我们的一个团队正在开发一个数据库(500GB左右),并从那里增长(我知道500Gig对你们许多人来说似乎很小,但它将成为我们商店中较大的数据库之一)。 他们正在努力解决的问题之一是备份和恢复数据库。 基本上,数据库将有几个“数据”表和一个用于存储图像/文件的表。 我们需要完成以下工作: 能够快速备份和恢复数据表(无图像)到我们的testing服务器进行debugging和testing。 在发生灾难性数据库故障的情况下,仅恢复数据表以使大部分应用程序尽快启用并尽快运行。 然后,尽可能恢复图像表。 在分配的夜间时间窗口(几个小时)内备份数据库。 我的问题是: 是否有可能完成前两个目标,同时仍然有图像存储在同一个数据库? 如果是这样,我们会使用文件组,文件stream还是其他的东西? 其他商店如何在合理的时间窗口内备份数据库,同时保持高可用性? 你从那里复制到第二个服务器和备份?

两个SQL Server数据库之间的实时镜像

我是ac#程序员,而不是DBA,而且我有(财)数据库pipe理任务。 所以在回答这个问题时请记住这一点。 我所要做的是在两个数据库之间创build一个实时双向镜像,并在它们之间build立一个10M的连接。 所以当改变它更新另一个。 这不是一个标准的数据镜像/故障转移任务,其中一个数据库是主数据库,另一个是备份数据库 – 两者都是实时的,每个数据库都需要立即反映对另一个数据库所做的更改。 在我的脑海里,这听起来像是一个很高的命令,甚至可能是不可能的 – 毕竟在瞬息万变的环境中,有很多的用户,这将是大量的资源密集型的,并在各处造成锁和队列。 可能吗? 如果是这样,任何人都可以给我一些基本的指示和/或指向我在一些地方开始我的阅读和研究? 干杯,马特

我如何授予对SQL Server 2008数据库的只读访问权限?

我试图授予SQL Server 2008 R2数据库上的用户帐户的只读访问权限(换句话说,仅select查询)。 我必须授予用户哪些权利才能完成这项工作? 我已经尝试了服务器和数据库本身的权限组合,但是在所有情况下,用户仍然可以运行更新查询,或者根本不能运行任何查询(甚至不能select)。 我总是得到的错误信息是 服务器主体“foo”无法在当前安全上下文中访问数据库“bar”。 谢谢你的帮助, 阿德里安

测量SQL Server性能改进

我们刚获得购买新的数据库服务器的批准。 我的经理担心,在部署新的服务器之后,一些用户可能不会感觉到性能的提高。 我的任务是想出一些方法来衡量改进。 但首先,有关升级的一些细节: 旧服务器具有双Intel Xeon 3.40GHz单核处理器和4GB内存。 它运行Windows 2000 Server Standard 32位和SQL Server 2000。 新的服务器将具有双Intel Xeon 2.4GHz四核处理器和18 GB的RAM。 它将运行Windows 2008 Hyper-V裸机。 最初,我们将虚拟化Windows Server 2003 Premium(直到我们可以将我们的ERP软件升级到最新版本)和SQL Server 2000(没有足够的预算来升级SQL Server)。 从来没有做过这样的事情,我的想法是创build一个SQL查询命中一些非常大的数据库表,使查询需要一两分钟的时间运行,并通过设置两个date来衡量需要多长时间来执行/时间variables,一个在大查询之前,一个在之后。 然后,我会将这两个date/时间值存储在一个表格中,并安排这项工作在每天的活动最less且相当时运行一晚。 这应该考虑白天的负载变化。 通过比较我们目前情况下的经过时间和升级后的经过时间,可以得出节省时间的想法,所以我们可以说升级带来了x%的提升。 我的计划看起来不错,还是我在阿尔伯克基错了 ? 有什么我应该额外测量?

重新启动Sql Server Agent是否安全?

我发现自己处在一个负责pipe理SQL服务器的开发人员中。 我已经设置了一些按计划运行的工作,但是希望在完成时收到电子邮件通知。 我已经设置了数据库邮件,并成功发送了一条testing消息,但是我收到一个错误消息,说当没有build立会话时尝试发送邮件。 在研究这个问题时,有很多噪音,重新启动SQL Server代理将解决问题。 但是,在我深入兔子洞之前,我想问问是否有重新启动SQL Server Agent的意外后果? 例如,它会影响任何当前的工作,还是有很高的风险,它会closures,但不会重新启动? 这是SQL 2005 x64 SP4。

使用外部URL而不是内部IP来解决SSIS中的服务器时性能是否受到影响?

我每天都在SQL Server代理中运行SQL Server Integration Services(SSIS)包。 我一直在监视软件包的性能,并在资源监视器中看到很多networking活动。 我正在从本地SQL Server实例加载数据到另一个本地SQL Server实例。 但是,我使用完全合格的URL来解决离线开发的服务器B / C更容易。 所以,而不是10.1.2.X我使用data.mydomain.com\instance 。 我是通过使用外部URL,而不是引用数据库为10.1.2.X\instance或localhost\instance性能命中? 另外,为什么在这些软件包运行时看到如此高的networkingstream量? networking上真的没有什么东西可以通过。 以下是在作业运行程序包时,资源监视器中的networkingstream量。 很明显networking上有很多stream量在运行,但是运行的作业只能从同一台机器读取和写入数据。 谢谢!

Active Directory用户的SQL Server连接,而不为每个用户创build显式login

作为Active Directory域(Windows Server 2008)的一部分的用户需要能够使用“公共”angular色权限连接到SQL Server 2008 R2(可以是Express Edition)。 我应该为这些用户中的每一个明确创build一个SQL Serverlogin名 ,还是Active Directory为其用户提供了其他授予SQL Server访问权限的方法?

重build非聚集索引很快会再次碎片化

对于经常插入行的表,我有一些非聚集索引。 根据SQL Server的说法,这些索引目前大约90%是分散的。 如果我重build他们,他们会下降到5%的碎片,但他们很快就会在几个小时内回到90%。 发生了什么事情,为什么我的索引如此持续地分散,我需要担心吗?