服务器名称里面选择浏览更多
找到integration
services
点开加号
里面应该就能找到服务器名称了
就是自己的电脑名称sp_who
select
from
sysprocesses
可以查目前活动用户,但密码查不了
打开企业管理器,看sqlserver
服务器的注册属性,看看是那种方式,如果是windows方式,用户就是机器的用户及密码,如果是sa方式,可以设置sql
用户及密码
目的地用户与密码是你自己控制的,自己设置,进入管理平台设置sa密码,也可以增加用户,如果是windows认证,使用windows用户及密码c# 远程连接数据库SQL
远程连接有点复杂,首先要保证客户端与SQL服务器连接
步骤:
一 看ping 服务器IP能否ping通。
这个实际上是看和远程sql server 2000服务器的物理连接是否存在。如果不行,请检查网络,查 看配
置,当然得确保远程sql server 2000服务器的IP拼写正确。
二 在Dos或命令行下输入telnet 服务器IP 端口,看能否连通。
如telnet 202114100100 1433
通常端口值是1433,因为1433是sql server 2000的对于Tcp/IP的默认侦听端口。如果有问题,通常这
一步会出问题。通常的提示是“……无法打开连接,连接 失败"。
如果这一步有问题,应该检查以下选项。
1 检查远程服务器是否启动了sql server 2000服务。如果没有,则启动。
2 检查服务器端有没启用Tcp/IP协议,因为远程连接(通过因特网)需要靠这个协检查方法是,在服
务器上打开开始菜单->程序->Microsoft SQL Server->服务器网络实用工具,看启用的协议里
是否有tcp/ip协议,如果没有,则启用它。
3 检查服务器的tcp/ip端口是否配置为1433端口。仍然在服务器网络实用工具里查看启用协议里面的
tcp/ip的属性,确保默认端口为1433,并且隐藏服务器复选框 没有勾上。
事实上,如果默认端口被修改,也是可以的,但是在客户端做telnet测试时,写服务器端口号时必须
与服务器配置的端口号保持一致。如果隐藏服务器复选框被勾 选,则意味着客户端无法通过枚
举服务器来看到这台服务器,起到了保护的作用, 但不影响连接,但是Tcp/ip协议的默认端口将被
隐式修改为2433,在客户端连接 时必须作相应的改变。
4 如果服务器端 *** 作系统打过sp2补丁,则要对windows防火墙作一定的配置,要对它开放1433端口,
通常在测试时可以直接关掉windows防火墙(其他的防火墙也 关掉最好)。
5 检查服务器是否在1433端口侦听。如果服务器没有在tcp连接的1433端口侦听,则是连接不上的。检
查方法是在服务器的dos或命令行下面输入
netstat -a -n 或者是netstat -an,在结果列表里看是否有类似 tcp 127001 1433 listening
的项。如果没有,则通常需要给sql server 2000打上至少sp3的补丁。其实在服务器端启动查询分
析器,输入 select @@version 执行后可以看到版本号,版本号在802039以下的都需要打补丁。
如果以上都没问题,这时你再做telnet 服务器ip 1433 测试,将会看到屏幕一 闪之后光标在左上
角不停闪动。恭喜你,你马上可以开始在企业管理器或查询分析 器连接了。
三 检查客户端设置
程序->Microsoft SQL Server -> 客户端网络使用工具。像在服务器网络实用工具里一样,确保客 户端
tcp/ip协议启用,并且默认端口为1433(或其他端口,与服 务器端保持一致就行)。
四 在企业管理器里或查询那分析器连接测试
企业管理器->右键SQlserver组->新建sqlserver注册->下一步->写入远程IP-> 下一步->选Sqlserver登陆-
>下一步->写入登陆名与密码(sa,password)->下一 步->下一步->完成 查询分析器->文件->连接->写
入远程IP->写入登录名和密码(sa,password)->确 定
通常建议在查询分析器里做,因为默认情况下,通过企业管理器注册另外一台SQL Server的超时设置
是4秒,而查询分析器是15秒。
修改默认连接超时的方法:
企业管理器->工具->选项->在d出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡->连接设
置->在登录超时(秒) 后面的框里输入一个较大的数字
查询分析器->工具->选项->连接->在登录超时(秒) 后面的框里输入一个较大的数 字
通常就可以连通了,如果提示错误,则进入下一步。
五 错误产生的原因通常是由于SQL Server使用了"仅 Windows"的身份验证方式,因 此用户无法使 用
SQL Server的登录帐户(如 sa )进行连接。解决方法如下所示:
1 在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server。
2 展开"SQL Server组",鼠标右键点击SQL Server服务器的名称,选择"属性",再选择"安全性"选项卡。
3 在"身份验证"下,选择"SQL Server和 Windows "。
4 重新启动SQL Server服务。(在dos或命令行下面net stop mssqlserver停止服务, net start mssqlserver启
动服务,也是一种快捷的方法)。
附注:在连接本地服务器时,通常使用的是命名管道协议(在服务器网络实用工具里可以看到启用的
协议有这个),默认端口是445,因此在本地能连通是不能说明什么问题的,连接远程服务器是完全
不同的协议)
//如果是在远程连接sql2000,采用下面连接字符串
// string source = "database=Northwind;Server=1921681181,1433;User ID=sa;Password=sa;Persist Security Info=True";
另外,站长团上有产品团购,便宜有保证
没有所谓的命名规则的,所有的机器都是一样的,可以说是随便命名,只要符合变量命名原则就可以了而你看到的服务器名称,其实是不同的实例而已一般你可能只看到一个服务器实例,有时一个服务器可能会有两个或两个实例唯一要说明的是这里的实例是服务器实例而不是数据库实例比如在SQL2000中一般要求单实例启动,启动时可以选择一个实例的如果多实例往往是SQL2005以上的版本,而且安装了其他的数据挖掘功能(BI)时的SQL服务器
而MSSSMSE只是一个管理程序,用来管理SQLserver的它可以联结服务器进行数据库的处理(当然是在GUI下),另一个是在DOS下的,所以很多企业服务器在安装时并没有安装MSSSMSE的因为你完全可以使用其他的MSSSMSE进行联结服务器的
MSSSMSE(MicrosoftSQLServerManagementStudioExpress)就是企业管理器
在企业管理器中,我们可以对SQLserver进行可视化 *** 作,但由于使用目的不同而有不同的设置其中有的SQL是为C/S服务服务的,而有些则是为B/S服务器,从开发人员的角度来考虑,SQLserver的安全不可忽视,但往往我们使用的只是开发版或是配置成开发环境的这种环境就要求我们既可能从windows进行数据库的修改 *** 作,也可以通过IIS进行SQL远程登陆 *** 作当然,如果是在本机也是有两种模式的,这是SQL的接口问题而企业管理器的登陆也提供了这种方式,这两种方式在MSSSMSE中的表示就是那个所谓的"身份验证"
如果使用windows登陆则表示的就是以当前机器或域控制用户进行验证管理的只要你有这个权限就可以了
而SQLSERVER验证则是将用户直接存在了SQL的系统数据库中,独立于windows和域控制帐户的而且这种验证将其权限进行了分级的
比如我的这个数据库是在域中,不须外网(区别于局域网)连接时,你是不愿意因为人员的流动,(公司开了一个人,他要是想报复你,在SQLserver中有一个用户)外网若可以连接,那样你的数据就完了!这种情况下可以配置为只允许windows验证登陆的,这时就算是外网使用sa用户也无足于事的
相反,若是一个局网内不须进行连接,若使用域用户或是本机用户能登陆时后果也是很严重的,你可能认为那不足为虑,事实恰恰相反,虽有可能别有用心者拿不到你的SQLserver服务器的权限,但如果拿到局网域中的任何一台机器的权限就可以让你的数据消失得无影无踪!这种情况必须控只允许使用SQL登陆的,而就是这样的服务器与只能采用SQlserver验证方式
这样的问题就出来了,若是与127001或者是(local),请问要登陆本机上哪一个服务器实例(多实例)若是在域控制下也是一样,不管你有多少台SQLserver不打出全部如何识别既就算一台也是一样的(因为域也不确信你后来加不加server,事实上域中必须是全称的)
800384-——————(sp1)
800534
-——————(sp2)
800760
-——————(sp3)
8002039
-——————(sp4)
方法二:运行sql
server服务管理器,在任务栏小托盘处,右键单击管理器图标,选“关于”,在d出的窗口中,对照上面的信息便知方法三:在添加或删除程序中查看sql
server的支持信息,可直接查看到版本号(具体方法略)补充说明:sql
server个人版,如果未打sp4补丁,是不会在1433端口监听的,即除本机外,其他电脑无法联入该数据库。1、查询SQL中的所有表: Select TABLE_NAME FROM 数据库名称INFORMATION_SCHEMATABLES Where TABLE_TYPE='BASE TABLE' 执行之后,就可以看到数据库中所有属于自己建的表的名称 2、查询SQL中所有表及列: Select dbosysobjectsname as Table_name, dbosyscolumnsname AS Column_name FROM dbosyscolumns INNER JOIN dbosysobjects ON dbosyscolumnsid = dbosysobjectsid Where (dbosysobjectsxtype = 'u') AND (NOT (dbosysobjectsname LIKE 'dtproperties')) 3、在Sql查询分析器,还有一个简单的查询方法: EXEC sp_MSforeachtable @command1="sp_spaceused ''" 执行完之后,就可以看到数据库中所有用户表的信息 4、查询总存储过程数:select count() 总存储过程数 from sysobjects where xtype='p' 附:xtype类型D = 默认值或 DEFAULT 约束
F = FOREIGN KEY 约束L = 日志FN = 标量函数
IF = 内嵌表函数
P = 存储过程
PK = PRIMARY KEY 约束(类型是 K)
RF = 复制筛选存储过程S = 系统表TF = 表函数
TR = 触发器U = 用户表UQ = UNIQUE 约束(类型是 K)V = 视图X = 扩展存储过程 另:在sqlserver中取得某个数据库中所有表名的sql语句 select sysobjectsname from sysobjectsxtype ='U';SELECT name
WHERE (xtype = 'U') 在数据库的sysobjects表里有这个数据库全部表的信息, xtype值为'U'的就是表名 注意:一般通过上述方法获得全部用户表示都会有一个dtproperties表,SQLSERVER 默认它也是用户表,想要从用户表中排出,需要加上限定条件 status>0,即:select from sysobjects where xtype='U' and status>0
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)