[zz]近来一直在做一个数据记录打印项目,由于项目太小,不值得上大型关系数据库,以前的Access数据库又因其太过于简单,用于做中心数据库还是觉得有些功能不全,因此SQL Server 2005 Express便成为了首选,而且这个数据库是免费的。
在项目设计完毕测试阶段后,发现SQL Server 2005 Express的远程连接还真是麻烦:由于我的数据库是通过Visual Stadio 2005直接创建的,所以在本机以“SQL Server数据库文件”即可连接,想当然认为只要将数据库文件放在一个共享目录下,并将共享权限提升到完全访问,或者直接映射为本机一个驱动器,应该可以连接,实际试验下来,结果是不行!通过提示,大概明白,SQL Server 2005 Express远程连接能力是关闭的。在网络上搜了一阵相关
文选,但是按文章所述,经试验还是无法实现远程连接!然而,每篇文章都不同程度说了SQL Server 2005的连接机制,如何连接呢?经试验多次后,总结出如下:
1、根据微软的MSDN网站文章,打开SQL Server 2005 Express远程连接功能:打开“SQL Server Configuration Manager”
将SQLEXPRESS协议的Named Pipes与TCP/IP启用,并设置TCP/IP端口为1433,应用后重新启动SQL SERVER 2005 EXPRESS服务。这步完成后,打开“SQL Server外围应用配置器”,选择“服务和连接的外围应用配置器”,可以看见“本地连接和远程连接”已经变为“同时使用TCP/IP和Named Pipe”,因此可以不修改。根据有的文章说已经可以连接,但是实际应用还是存在连接失败问题。 2、打开SQL Server Browser,以便客户机可以获取数据库连接信息:打开“SQL Server外围应用配置器”,选择“服务和连接的外围应用配置器”,选中SQL Server Browser:
“启动类型”默认是“禁用”,改为“自动”,单击“应用”使之生效,然后启动此服务。这样SQL Server 2005 Express的远程连接已经设置成功,但在客户机测试连接,有时依然会失败。为什么,请看第三步。
3、通常大家安装的Windows都是XP以上版本,Windows自带防火墙已经激活,而且大部分用户计算机上也因为上网安全,安装了杀毒软件和防火墙,这样SQL Server 2005 Express的服务程序就会被拦截,导致失败。这里以Windows自带的防火墙为例设置Sql Server的相关服务:在控制面板打开“Windows安全中心”,选择“Windows防火墙”,选择“例外”,添加程序“Sqlservr.exe”和“Sqlbrowser.exe”。
提示:单击“添加程序”,在文件选择对话框选择相应程序,这两个程序分别为“[安装SQL Server的硬盘驱动器]\\Program Files\\Microsoft SQL Server\\MSSQL.1\\MSSQL\\Binn\\sqlservr.exe”和“[安装SQL Server的硬盘驱动器]\\Program Files\\Microsoft SQL Server\\90\\Shared\\sqlbrowser.exe”。 4、通过此三步设置,在Windows用户管理创建相关的登录用户,已经可以连接了,不过如果习惯采用SQL身份验证登陆的用户,可以通过“SQL Server Management Studio Express”来进行设置,这个软件不包含在SQL server 2005 Express安装包中,需要自行下载(在微软下载的文件名称为
SQLServer2005_SSMSEE.msi)。安装完毕,打开,先以“Windows身份验证”连接数据库:
如果在安装过程SQL SERVER 2005 Express没有选择“SQL SERVER和Windows身份验证模式”的,可以在上图状态下,右键单击对象实例(.\\Express„),选择属性打开属性服务器对话框,选择“安全性”选项,选择“SQL SERVER和Windows身份验证模式”,确定:
接着就是创建SQL登录用户,展开实例节点,选择“安全性”,右键单击,选择“新建”->“登录”:
在打开的对话框,选择\"SQL SEVER身份认证\",输入相关信息,若每次登录保持同一密码,取消选择“强制密码过期”:
切换到“服务器角色”,选中“sysadmin”:
确定,保存。重启SQL SERVER 2005 EXPRESS服务,即可以新建的用户以SQL SERVER身份登录了。
///////////////////////////////////////////////////////////////////// [zz]
Sql Server 2005 远程登陆失败解决(转)
错误提示:\"An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) \" 中文: 在建立与服务器的连接时出错。在连接
到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。
装完 sqlserver2005(Express版),为了便于管理,你还需要去下一个管理器(SQLServer2005_SSMSEE.msi),微软的官方网站有。
1、开启sql2005远程连接功能:
配置工具->SQL Server 外围应用配置器->服务和连接的外围应用配置器->打开MSSQLSERVER节点下的Database Engine 节点,先择\"远程连接\接下建议选择\"同时使用TCP/IP和named pipes\确定后,重启数据库服务.一定是重起服务,不是重起Sql Server
2、登陆改为混合模式:
打开manage管理器->以windows方式连接并进入数据库->右键点击你的数据服务器->属性->security>选中Sql server and windows Authentication 3、新建Sql server方式的用户名和密码:
maage管理器->security->右键点击logins->new login...->选中sql server authentication->设置login name 和password(confirm password)
最好去掉“enforce password expiration”前的小钩,否则每次登陆都要修改密码。 /*
manage管理器->windows Authentication>new query>sp_password null,'sa123456','sa'
这样就设置了一个用户名为sa ,密码为:sa123456的用户,下次在登陆时,可以用Sql server方式,
用户名为sa ,密码为:sa123456的用户进数据库了. */
4、做完上面三步后,这样写连接字符串就可以顺利进入数据库了(data source=ip地址;uid=用户名;pwd=密码;database=master\");
//////////////////////////////////远程访问应该换要开启防火墙->高级->本地连接->设置->服务;中的 web服务器(http);应该也是必须的这样才能保证客户端机器访问!
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo0.com 版权所有 湘ICP备2023021991号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务