如何使用sql server 2008 r2

SQLserver2008全文检索使用方法_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
暂无相关推荐文档
喜欢此文档的还喜欢8页免费59页2下载券46页1下载券58页1下载券51页1下载券
SQLserver2008全文检索使用方法|介​绍​在​S​Q​L​S​e​r​v​e​r08​中​,​以​数​据​库​方​式​建​立​全​文​检​索​的​过​程​。
把文档贴到Blog、BBS或个人站等:
普通尺寸(450*500pix)
较大尺寸(630*500pix)
你可能喜欢如何安装并运行SQL Server 2008 Management Studio Express_百度知道
提问者采纳
我装的是sqlserver2005的,我的 Management Studio是在以下路径 &C:\Program Files\Microsoft SQL Server\90\Tools\Binn\VSShell\Common7\IDE\SqlWb.exe& 你找找你的文件下面是否有类似SqlWb.exe的exe,sqlserver2008之前我也装过,不过现在已经卸载了,所以在sqlserver2008里面是否改了名称也没法帮你看看,你找找试试吧===================================我已经重新给你留言了,你看看我帮你查的资料里面是否对你有用
提问者评价
重装了个Advanced Express,终于搞定了,非常感谢
其他类似问题
按默认排序
其他3条回答
这个是sqlserver2008的安装文件,不是vsstudio,vsstudio下载下来有3点多G呢,我也在装这个,不过失败了,还没时间研究一下,重新下载源文件吧!
没有专门安装过这个,不过如果你安装SQLExpress 2008的时候它会自动安装的。
VS自带的就一起安上了,所有程序-&VS 里没有吗?
studio的相关知识
您可能关注的推广
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁系统已安装sql server 2005,如何安装sql server 2008?
[问题点数:60分,结帖人xiaosong2008]
系统已安装sql server 2005,如何安装sql server 2008?
[问题点数:60分,结帖人xiaosong2008]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
相关帖子推荐:
2011年12月 总版技术专家分月排行榜第三2011年9月 总版技术专家分月排行榜第三
2011年6月 MS-SQL Server大版内专家分月排行榜第一
2010年12月 MS-SQL Server大版内专家分月排行榜第三
2014年10月 Delphi大版内专家分月排行榜第二2014年9月 Delphi大版内专家分月排行榜第二
本帖子已过去太久远了,不再提供回复功能。页面导航:
→ 正文内容 sql2008远程连接数据库失败
使用SQL Server 2008远程链接时SQL数据库不成功的解决方法
这篇文章主要介绍了使用SQL Server 2008远程链接时SQL数据库不成功问题的解决方法,需要的朋友可以参考下
远程连接SQL Server 2008,服务器端和客户端配置
关键设置:
第一步(SQL2005、SQL2008):
开始--&程序--&Microsoft SQL Server 2008(或2005)--&配置工具--&SQL Server 配置管理器--&SQL Server网络配置--&MSSQLSERVER(这个名称以具体实例名为准) 的协议--&TCP/IP--&右键--&启用
开始--&程序--&Microsoft SQL Server 2005--&配置工具--&SQL Server 2005外围应用配置器--&服务和连接的外围应用配置器 --&Database Engine --&远程连接,选择本地连接和远程连接并选上同时使用Tcp/Ip和named pipes.
(附:如何配置 SQL Server 2005 以允许远程连接:/kb/914277/zh-cn&)
打开SQL Server Management Studio--&在左边[对象资源管理器]中选择第一项(主数据库引擎)--&右键--&方面--&在方面的下拉列表中选择[外围应用配置器]--&将RemoteDacEnable置为True.(这一步很关键)
如果XP有开防火墙,在例外里面要加入以下两个程序:C:/Program Files/Microsoft SQL Server/MSSQL.1/MSSQL/Binn/sqlservr.exe,C:/Program Files/Microsoft SQL Server/90/Shared/sqlbrowser.exe
开始--&程序--&Microsoft SQL Server 2008(或2005)--&配置工具--&SQL Server 配置管理器--&SQL Server 服务--&右击SQL Server(MSSQLSERVER) (注:括号内以具体实例名为准)--&重新启动
服务器端开启sa用户。开始 -& 程序 -& Microsoft SQL Server 2008 -& Microsoft SQL Server Management Studio -& 主数据库引擎 -& 安全性 -& 登录名 -& sa,设置密码。
在客户端登陆服务器端数据库。如下图所示:
C#工程更改数据库连接字符串。打开C#工程 -& 解决方案资源管理器 -& app.config -& 更改。示例如下:
[c-sharp]&
connectionString="data source=服务器IP/实例名;initial catalog=数据库名;User ID=用户名;password=密码"&
Good Luck! Enjoy……
用户在使用SQL Server 2008远程链接时,可能会弹出如下对话框:
在链接SQL服务器时发生网络链接错误或特定实例错误。SQL服务器不存在或者链接不成功。请验证用户名是否正确或SQL服务器是否已经配置远程链接功能。(错误发现方:命名管道供应方。错误代号:40---无法和SQL服务器进行链接)
如何处理这一问题?
用户如果发现这个错误提醒,需要检查三个方面的配置,并做出相关修改。(以下所标注的配置措施均以SQL 2008服务器为模板)
(一)用户需要做的第一件事是检查SQL数据库服务器中是否允许远程链接。在SQL 2008服务器中可以通过打开SQL Server 2008管理项目(SQL Server 2008 Management Studio,)来完成这项检查。其具体操作为:
(1)右击SQL Server 2008选项,选择SQL Server 2008 Management Studio:
(2)打开“服务器属性(Server Properties)” (右键连接名称-属性)
选择“允许用户对该服务器进行远程链接”选项后,检查是否问题已经排除。如果远程链接已经成功,该过程已经完成。若用户发现“提醒错误对话框”依然弹出,那么还需要做的是:
(二)为微软SQL服务器(MSSQLServer)配置相应协议。
& 此时用户要做的是检查SQL网络链接配置。打开“SQL服务器配置管理”选项&打开“该节点的SQL服务器网络配置选项”&选择“微软SQL服务器网络协议”选项(或用户的SQL服务器中为SQL服务器配置网络协议的选项,不同版本的SQL名称可能不同):
确定“微软SQL服务器网络选项协议”中的TCP/IP协议对服务器来说是有效的。再次检查是否已经可以执行远程链接。若“错误提醒对话框”依然弹出,我们需要进一步检查SQL服务器防火墙选项。
(三)检查SQL服务器防火墙设置 (快捷步骤-直接关闭防火墙(不安全))
如果在进行完上两步操作后,用户端计算机仍然无法远程链接到SQL服务器,用户需要做的是对SQL服务器防火墙进行重新配置。在进行这一步操作时,首先找到SQL服务器上那个端口支持TCP/IP协议。用户可以在SQL服务器防火墙已经处于运行状态下,点击“TCP/IP协议”选择“属性”:
& 从上图中我们可以看出,这台SQL服务器上支持TCP/IP协议的是1433端口。下一步要做的是在防火墙的配置中允许1433端口支持TCP/IP协议即可。如果服务器上运行的是Windows 7操作系统,其配置步骤为(其他微软操作系统的做法类似),打开“控制面板”选择“Windows防火墙”选项:
& 选择“高级设置”后,在右边菜单栏中找出“具有高级安全选项的Windows防火墙”并将其打开。打开后会发现在左边菜单栏中有“入站规则(Inboud Rules)”选项。将该选项打开,并在右边菜单栏中选择“新建规则(New Rule)”选项:
打开“新建规则”选项后,利用“新内置绑定规则向导”为1433端口配置“内部绑定协议”配置为适用于TCP/IP协议即可。(前提是,需要完成该步骤以前所述的所有步骤),根据下面的几幅图为1433端口配置适用于1433端口即可:
完成上述的三大步骤,并确认每一步都操作正确后,用户的SQL服务器即可支持远程链接,一切万事ok了。
(注意:完成第二步骤的时候,必须先重启sql服务才可以)(net stop mssqlserver&& net start mssqlserver)。
上一篇:下一篇:
最 近 更 新
热 点 排 行西西软件下载最安全的下载网站、值得信赖的软件下载站!
您的位置:
→ SQL Server 对于内存的管理 SQL Server是如何使用内存的
简介&&& 理解对于内存的管理是对于SQL Server问题处理和性能调优的基本,本篇文章讲述SQL Server对于内存管理的内存原理。二级存储(secondary storage)&&& 对于计算机来说,存储体系是分层级的。离CPU越近的地方速度愉快,但容量越小(如图1所示)。比如:传统的计算机存储体系结构离CPU由近到远依次是:CPU内的寄存器,一级缓存,二级缓存,内存,硬盘。但同时离CPU越远的存储系统都会比之前的存储系统大一个数量级。比如硬盘通常要比同时代的内存大一个数量级。&&&&&&& 图1.计算机存储体系&&& 因此对于SQL Server来说,正常的生产系统所配置的内存通常不能装载所有数据,因此会涉及到二级存储,也就是磁盘。磁盘作为现代计算机系统中最后的机械存储部件,读取数据需要移动磁头(具体关于磁盘的原理,可以看我之前写的一篇文章),并且由于所访问的数据往往是随机分布在磁盘的各个位置,因此如果频繁的读取磁盘需要频繁的移动磁头,这个性能将会十分底下。&&& 由计算机体存储体系结构可以知道,计算机对于所有硬盘内数据的操作都需要首先读取到内存,因此利用好内存的缓冲区而减少对磁盘IO的访问将会是提升SQL Server性能的关键,这也是本篇文章写作的出发点之一。SQL Server引擎,一个自我调整的引擎&&& 由于SQL Server过去一直面向是中小型企业市场的原因,SQL Server存储引擎被设计成一个不需要太多配置就能使用的产品,从而减少了部署成本,但这也是很多人一直诟病的微软开放的配置过少。而对于SQL Server如何使用内存,几乎没有直接可以配置的空间,仅仅开放的配置只有是否使用AWE,以及实例占用的最大或最小内存,如图2所示。&&&&&&& 图2.SQL Server可控控制内存的选项&&& 而对于具体的SQL Server如何使用内存,例如分配给执行计划缓存多少,分配给数据buffer多少,这些都无法通过配置进行调控。这也是很多其它技术的开发人员对于使用微软技术的开发人员充满优越感的原因,而在我看来,虽然SQL Server提供可控配置的地方很少,但是很多地方都可以在通晓原理的情况下进行“间接”的配置。这也需要了解一些Windows的原理。SQL Server是如何使用内存的&&& SQL Server存储引擎本身是一个Windows下的进程,所以SQL Server使用内存和其它Windows进程一样,都需要向Windows申请内存。从Windows申请到内存之后,SQL Server使用内存粗略可以分为两部分:缓冲池内存(数据页和空闲页),非缓冲内存(线程,DLL,链接服务器等)。而缓冲池内存占据了SQL Server的大部分内存使用。缓冲池所占内存也就是图2最大最小内存所设置的,因此sqlservr.exe所占的内存有可能会大于图2中所设置的最大内存。&&& 还有一点是,SQL Server使用内存的特点是:有多少用多少,并且用了以后不释放(除非收到Windows内存压力的通知)。比如我所在公司的开发服务器,在几乎没有负载的时候来看内存使用,如图3所示。&&&&&&& 图3.SQL Server 进程的内存使用&&& 可以看到CPU在0负载的时候,内存却占据了13个G。这其实是在之前的使用SQL Server向Windows申请的内存一直没有释放所致。&&& 具体SQL Server能够使用多少内存是由以下几个因素决定的:&&& 1.物理内存的大小&&& 2.所安装Windows版本对于内存的限制(比如windows server 2008标准版限制最大内存只能使用32GB)&&& 3.SQL Server是32位或64位&&& 4.如图2所示配置SQL Server对于内存的使用量&&& 5.SQL Server的版本(比如express版只能用1G内存)SQL Server OS的三层内存分配&&& SQL Server OS对于内存的分配分为三个层级,依赖关系如图4所示。&&&&&&& 图4.SQL Server OS内存依赖关系Memory Node&&& 首先最底层的是Memory Node,Memory Node的作用是使得分配内存由Windows移交到SQL Server OS层面执行。每个SQL Server实例通常都只拥有一个Memory Node,Memory Node的多寡只取决于NUMA构架的硬件配置。我们通过 DBCC MEMORYSTATUS& 可以看到Memory Node的一些信息,如图5所示。&&&&&&& 图5.查看Memory Node信息&&& 我们可以看出 ,按照申请内存大小分类,可以分为两部分&&& 1.申请小于等于8KB为一个单位的内存,这些内存被用于缓存。(图5中的SinglePage Allocator)&&& 2.申请大于8KB为一个单位的内存,这些内存称为Multi-Page(或MemToLeave)(图5中的MultiPage Allocator)&&& 对于为什么叫MemToLeave,被称为MemToLeave的原因是由于SQL Server虽然大部分内存被用于缓冲区,但还需要一些连续的内存用于SQL CLR,linked server,backup buffer等操作,32位SQL Server在启动实例时会保留一部分连续的虚拟地址(VAS)用于进行MultiPage Allocator。具体保留多少可以用如下公式计算:&&& 保留地址=((CPU核数量-4)+256)*0.5MB+256MB,通常在384MB左右。Memory Clerk&&&&让我们再来看Memory Clerk,Memory Clerk用于分配内存,用于将Allocate出去的内存进行分类,可以简单的进行如下语句,如图6所示.&&&&&&& 图6.按照Memory Clerk的类别进行分类&&& 注意:由图4可以看到,Memory Clerk只是分配内存的一部分,另一部分是数据缓存(Buffer Pool)Buffer Pool&&& 在开始讲述Buffer Pool之前,首先想讲一下虚拟内存。&&& 在Windows中每个进程都有一个虚拟内存(Virtual Address Space& VAS),32位系统是2的32次方,也就是4G,这4G被Windows划为两部分,一部分是Windows使用,另一部分才是应用程序使用。虚拟内存并不是实际的物理内存,而是对于物理内存的映射,当物理内存不存在虚拟内存指向的内容时,产生缺页中断,将一部分页面置换出内存,然后将需要的部分从硬盘读到内存,关于这块,可以读我之前写的一篇文章:浅谈操作系统对内存的管理。&&& 因此Buffer Pool的作用时缓冲数据页,使得未来读取数据时减少对磁盘的访问。&&& 这个Buffer Pool这部分就是图2中设置最大最小服务器内存所占用的空间。这个最小值并不意味着SQL Server启动时就能占用这么多内存,而是SQL Server Buffer Pool的使用一旦超过这个值,就不会再进行释放了。&&& 在DBCC MEMORYSTATUS 其中有一部分我们可以看到Buffer Pool的信息,如图7所示。&&&&&&& 图7.Buffer Pool的相关信息&&& 在SQL Server实例启动时,Buffer Pool所保留的VAS地址空间取决于多个因素:包括实际的物理内存和SQL Server是32位或是64位(这个限制32位是4G,还要划一半给Windows和减去MemToLeave空间),而对于实际上SQL Server所使用的物理内存,可以通过如下语句查看,如图8所示。&&&&&&& 图8.查看Buffer Pool所使用物理内存&&& Buffer Pool会按照需要不断的提出内存申请。Buffer Pool如果需要,Buffer Pool会不断消耗内存,直到Windows通知SQL Server内存过低时,Buffer Pool才有可能释放内存,否则Buffer Pool占据了内存不会释放。&&& 另外值得注意的一点是,Buffer Pool所分配的页面和SQL Server OS页面大小是一致的,也就是8192字节,当SQL Server其它部分需要向”Buffer Pool”借内存时,也只能按照8k为单位借,并且这部分内存在物理内存中是不连续的,这听上去像是Buffer Pool内存管理自成体系,可以这么理解,因为Buffer Pool 不使用任何SQL Server的page allocator,而直接使用virtual或AWE SQLOS's的接口。&&& 所以SQL Server所占用的内存可以用这个公式粗略估算出来: buffer pool占用的内存+从buffer pool借的页占得内存+multiPageAllocator分配的非buffer pool内存,如图9所示。&&&&&&& 图9.可以近似的估算出sql server所占的内存Memory Object&&&&menory object本质上是一个堆,由Page Allocator进行分配,可以通过sys.dm_os_memory_objects这个DMV进行查看,这个DMV可以看到有一列Page_Allocator_Address列,这列就是Memory Clerk的标识,表明这个Memory Object是由哪个Memory Clerk进行分配的。32位SQL Server的内存瓶颈&&& 由文章前面所述的一些基本原理可以看出,由于32位的SQL Server使用的是VAS进行地址分配,因此寻址空间被限制在4GB,这4GB还要有一半分给Windows,使得Buffer Pool最多只能用到2G的内存,这使得32位SQL Server即使有多余的物理内存,也无法使用。&&& 解决办法之一是通过减少Windows默认占用的2G到1G,使得SQL Server可以使用的内存变为3G。这个可以通过在Windows Server 2008中的命令行键入 BCDEdit /set设置increaseuserva选项,设置值为3072MB,对于Windows Server 2003来说,需要在boot.ini中加上/3gb启动参数。&& 另一种办法是使用AWE(Address&Window&Extension)分配内存。AWE通过计算机物理地址扩展(Physical Address Extension PAE),增加4位,使得32位的CPU寻址范围增加到2的36次方,也就是64GB。基本解决了寻址范围不够的问题。VirtualAlloc和AllocateUserPhysicalPages&&&&VirtualAlloc和AllocateUserPhysicalPages是SQL Server向Windows申请内存所使用的方法。在默认情况下,SQL Server所需要的所有内存都会使用VirtualAlloc去Windows申请内存,这种申请是操作系统层面的,也就是直接对应的虚拟内存。这导致一个问题,所有通过VirtualAlloc分配的内存都可以在Windows面临内存压力时被置换到虚拟内存中。这会造成IO占用问题。&&& 而使用AllocateUserPhysicalPages所申请的内存,直接和更底层的页表(Page Table)进行匹配,因此使用这个方法申请的内存不会被置换出内存。在32位SQL Server的情况下,通过开启AWE分配内存,buffer pool中的data cache部分将会使用这个函数,而MemToLeave部分和Buffer Pool中的另一部分内存(主要是执行计划缓存)依然通过VirtualAlloc进行内存分配。&&& 因此在开启通过AWE分配内存之前,SQL Server首先需要对应的权限,否则就会在日志中报错,如图10所示。&&&&&&& 图10.开启AWE却没有开启对应权限报错&&& 我们可以在组策略里设置启动SQL Server的账户拥有这个权限,如图11所示。&&&&&&& 图11.锁定内存页(Lock Page In Memory)64位SQL Server的问题&&& 64位Windows基本已经不存在上述的内存问题,但是依然要注意,在默认情况下,64位的SQL Server使用的依然是VirtualAlloc进行内存分配,这意味着所有分配的内存都会在Windows面临压力时将页置换出去,这很可能造成抖动(Buffer Pool Churn),这种情况也就是SQL Server Buffer Pool中的页不断的被交换进硬盘,造成大量的IO占用(可以通过sys.dm_exec_query_memory_grants这个DMV查看等待内存的查询),因此64位SQL Server将Buffer Pool中的Date Page通过AllocateUserPhysicalPages来进行内存分配就能避免这个问题。与32位SQL Server不同的是,64位SQL Server并不需要开启AWE,只需开启如图11所示的“Lock Page In Memory”就行了。&&& 但这又暴漏出了另一个问题,因为SQL Server锁定了内存页,当Windows内存告急时,SQL Server就不能对Windows的内存告急做出响应(当然了Buffer Pool中的非data cache和MemToLeave部分依然可以,但往往不够,因为这部分内存相比Data Cache消耗很小),因为SQL Server的特性是内存有多少用多少,因此很有可能在无法做出对Windows低内存的响应时造成Windows的不稳定甚至崩溃。因此开启了”Lock Page In Memory”之后,要限制SQL Server Buffer Pool的内存使用,前面图2中已经说了,这里就不再细说了。&&& 还有一个问题是当Buffer Pool通过AllocateUserPhysicalPages分配内存时,我们在任务管理器中看到的sqlservr.exe占用的内存就仅仅包含Buffer Pool中非Data Cache部分和MemToLeave部分,而不包含Data Cache部分,因此看起来有可能造成sqlservr.exe只占用了几百兆内存而内存的使用是几十G。这时我们就需要在Perfmon.exe中查看SQL Server:Memory Manager\Total Server Memory计数器去找到SQL Server真实占用的内存。总结&&& 本文讲述了SQL Server对内存管理的基本原理和SQL Server对内存使用所分的部分,对于SQL Server性能调优来说,理解内存的使用是非常关键的一部分,很多IO问题都有可能是内存所引起的。
阅读本文后您有什么感想? 已有
人给出评价!
访问量多的}

我要回帖

更多关于 sql server 2014 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信