如何跨服务器访问数据库
2009-08-14 11:05
302 查看
--第一步
EXEC sp_addlinkedserver
@server = 'CenterDB',
@srvproduct='',
@provider = 'SQLOLEDB', --或者'MSDASQL'
@provstr = 'DRIVER={SQL Server};SERVER=122.XXX.48.12;UID=dyj_dev;PWD=XXXXX;'--链接字符串
--第二步
EXEC sp_addlinkedsrvlogin
'CenterDB', --被访问的服务器别名
'false',
NULL,
'dyj_dev', --帐号
'XXXXX' --密码
--删除相关链接
Exec sp_droplinkedsrvlogin 'CenterDB',Null
Exec sp_dropserver 'CenterDB'
--- in server1
USE master
GO
EXEC sp_addlinkedserver
'server2',
N'SQL Server'
GO
EXEC sp_addlinkedsrvlogin 'SERVER2', 'false', NULL, 'SA', 'PASSWORD' --这里的PASSWORD是SERVER2的PASSWORD,也可以不用SA
GO
select * from sever2.mydb.dbo.tabe1
就可以了。
Exec sp_droplinkedsrvlogin DBVIP,Null
Exec sp_dropserver DBVIP
EXEC sp_addlinkedserver
@server='DBVIP',--被访问的服务器别名
@srvproduct='',
@provider='SQLOLEDB',
@datasrc='Server2' --要访问的服务器
EXEC sp_addlinkedsrvlogin
'DBVIP', --被访问的服务器别名
'false',
NULL,
'sa', --帐号
'thankyoubobby' --密码
Select * from DBVIP.pubs.dbo.orders
/////////////////////////////ORACLE////////////////////////////
Exec sp_droplinkedsrvlogin demo,Null
Exec sp_dropserver demo
go
EXEC sp_addlinkedserver
@server ='demo',
@srvproduct='Oracle',
@provider='MSDAORA',
@datasrc='ServiceName'
EXEC sp_addlinkedsrvlogin
'demo',
'false',
NULL,
'userid',
'password'
go
SELECT * FROM OPENQUERY(demo ,'select * from tbdemo' )
UPDATE OPENQUERY (demo, 'SELECT id FROM tbdemo WHERE id = 101')
SET name = 'hello';
INSERT OPENQUERY (demo, 'SELECT id FROM tbdemo')
VALUES ('hello');
DELETE OPENQUERY (demo, 'SELECT id FROM tbdemo WHERE name = ''hello''');
EXEC sp_addlinkedserver
@server = 'CenterDB',
@srvproduct='',
@provider = 'SQLOLEDB', --或者'MSDASQL'
@provstr = 'DRIVER={SQL Server};SERVER=122.XXX.48.12;UID=dyj_dev;PWD=XXXXX;'--链接字符串
--第二步
EXEC sp_addlinkedsrvlogin
'CenterDB', --被访问的服务器别名
'false',
NULL,
'dyj_dev', --帐号
'XXXXX' --密码
--删除相关链接
Exec sp_droplinkedsrvlogin 'CenterDB',Null
Exec sp_dropserver 'CenterDB'
--- in server1
USE master
GO
EXEC sp_addlinkedserver
'server2',
N'SQL Server'
GO
EXEC sp_addlinkedsrvlogin 'SERVER2', 'false', NULL, 'SA', 'PASSWORD' --这里的PASSWORD是SERVER2的PASSWORD,也可以不用SA
GO
select * from sever2.mydb.dbo.tabe1
就可以了。
Exec sp_droplinkedsrvlogin DBVIP,Null
Exec sp_dropserver DBVIP
EXEC sp_addlinkedserver
@server='DBVIP',--被访问的服务器别名
@srvproduct='',
@provider='SQLOLEDB',
@datasrc='Server2' --要访问的服务器
EXEC sp_addlinkedsrvlogin
'DBVIP', --被访问的服务器别名
'false',
NULL,
'sa', --帐号
'thankyoubobby' --密码
Select * from DBVIP.pubs.dbo.orders
/////////////////////////////ORACLE////////////////////////////
Exec sp_droplinkedsrvlogin demo,Null
Exec sp_dropserver demo
go
EXEC sp_addlinkedserver
@server ='demo',
@srvproduct='Oracle',
@provider='MSDAORA',
@datasrc='ServiceName'
EXEC sp_addlinkedsrvlogin
'demo',
'false',
NULL,
'userid',
'password'
go
SELECT * FROM OPENQUERY(demo ,'select * from tbdemo' )
UPDATE OPENQUERY (demo, 'SELECT id FROM tbdemo WHERE id = 101')
SET name = 'hello';
INSERT OPENQUERY (demo, 'SELECT id FROM tbdemo')
VALUES ('hello');
DELETE OPENQUERY (demo, 'SELECT id FROM tbdemo WHERE name = ''hello''');
相关文章推荐
- android开发 如何通过web服务器访问MYSQL数据库并且使其数据同步到android SQLite数据库?
- 如何在外网访问内网服务器数据库
- 【转】如何访问另一台服务器的数据库
- 如何从外部电脑访问服务器的Sqlserver 2005/2008 数据库
- 谈谈如何通过WEB服务器访问内网数据库服务器的原理
- Android中模拟器如何访问本地服务器
- 如何改变服务器的本地域名来访问本地服务器 而不用localhost或者127.0.0.1来访问
- sql server 里如何取得服务器的日期和时间,并以自定义的格式插入数据库?
- SQL Server 中如何访问其他数据库
- 如何恢复一个非用户sa创建的数据库,且使用原用户创建者进行访问
- oracle中如何查看数据库服务器的ip地址
- IIS服务器如何抗住高并发的客户端访问
- SQL Server 2008入门系列之设置数据库服务器的访问权限
- 如何访问在华为云服务器上部署的web项目
- 如何利用自己的电脑做服务器发布tomcat的WEB项目供外网访问
- 如何使用自己电脑搭建一个外网可以访问的服务器
- 搭建了一个Apache+Php+MySQL的服务器。要如何通过Apache发布网站使得其他的电脑可以通过局域网访问?
- 如何利用自己的电脑做服务器发布tomcat的WEB项目供外网访问
- 访问不同服务器上的数据库
- 服务器主体 "sa" 无法在当前安全上下文下访问数据库 XXX[SQLSTATE 08004] (错误 916). 该步骤失败。