SQL 不同ip的两个数据库数据插入,


简单示例:
//创建linkServer
exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','服务器名' 
//登陆linkServer
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'用户名','密码' 
//查询linkServer的数据库DataBaseA的表TableA
Select * From srv_lnk.DataBaseA.dbo.TableA
//List the tables in the linked server
EXEC sp_tables_ex txtsrv

下面是执行通过的代码,

--先执行这里
EXEC sp_addlinkedserver 'XHLink','','SQLOLEDB','10.0.0.27'
EXEC sp_addlinkedsrvlogin 'XHLink','false',null,'sa','******'
--再执行这里,不能一起执行
insert into xh
SELECT * FROM XHLink.marketing.dbo.xh
where xh_bm='0607' and xh_rq='2015/01/03'


insert into xhmx
SELECT * FROM XHLink.marketing.dbo.xhmx
where xhmx_dh in
(
SELECT xh_dh FROM XHLink.marketing.dbo.xh
where xh_bm='0607' and xh_rq='2015/01/03'
)



以上通过两个地方学习而来,要详细可以看下面两个博客

http://blog.csdn.net/htl258/article/details/5695391

http://blog.csdn.net/postfxj/article/details/21405711

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用paramiko实现两个数据库之间数据传输的python代码示例: ```python import paramiko import pymysql # 定义ssh连接的参数 ssh_host = 'ssh_host_ip' ssh_user = 'ssh_user' ssh_password = 'ssh_password' # 定义源数据库连接的参数 src_host = 'src_db_host' src_user = 'src_db_user' src_password = 'src_db_password' src_db = 'src_db_name' src_table = 'src_table_name' # 定义目标数据库连接的参数 dst_host = 'dst_db_host' dst_user = 'dst_db_user' dst_password = 'dst_db_password' dst_db = 'dst_db_name' dst_table = 'dst_table_name' # 建立ssh连接 ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(ssh_host, username=ssh_user, password=ssh_password) # 建立源数据库连接 src_conn = pymysql.connect(host=src_host, user=src_user, password=src_password, database=src_db) src_cursor = src_conn.cursor() # 建立目标数据库连接 dst_conn = pymysql.connect(host=dst_host, user=dst_user, password=dst_password, database=dst_db) dst_cursor = dst_conn.cursor() # 通过ssh连接建立socks5代理 ssh_transport = ssh.get_transport() dst_host_port = (dst_host, 3306) local_host_port = ('127.0.0.1', 3307) ssh_channel = ssh_transport.open_channel('direct-tcpip', dst_host_port, local_host_port) # 建立目标数据库连接 dst_conn = pymysql.connect(host='127.0.0.1', port=3307, user=dst_user, password=dst_password, database=dst_db) dst_cursor = dst_conn.cursor() # 从源数据库读取数据 src_cursor.execute("SELECT * FROM {}".format(src_table)) rows = src_cursor.fetchall() # 将数据插入到目标数据库 for row in rows: sql = "INSERT INTO {} VALUES {}".format(dst_table, row) dst_cursor.execute(sql) # 提交事务 dst_conn.commit() # 关闭连接 src_cursor.close() src_conn.close() dst_cursor.close() dst_conn.close() ssh.close() ``` 上述代码中,通过paramiko实现了ssh连接,并使用socks5代理连接到目标数据库。然后从源数据库读取数据,并将数据插入到目标数据库

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值