---连接远程数据库 :使用catalog 命令,把远程数据库映射到本地连接
1)db2 catalog tcpip node <节点名称> remote <远程数据库地址> server 50000
例如:db2 catalog tcpip node db2name remote 192.168.0.100 server 50000
2) db2 connect to <节点名称> user <用户名> using <密码>
例如:db2 contect to db2name user db2admin using db2admin
---远程数据表的导入到本地:
1 )现在本地磁盘创建一个目录存放 例如:F:\backup\DB2\
2)连接远程数据库 例如:db2 connect to db2name user db2admin using db2admin
3) 导出数据表结构到sql文件
3.1 ) 先打开目录 : cd F:\backup\DB2\
3.2)执行导出表结构到sql文件 ,这样会在目录下生产dbname.sql文件
:db2look -d dbname -e -a -x -i username -w password -o dbname.sql
3.3)导出数据:db2move dbname export -u username -p password
执行完毕后,会在磁盘文件目录生产一大堆的数据文件
提示:可以跳过第二步直接执行第三步,就是导入数据方式有区别 load与 import
--- 导入数据的方式就是:
1.先创建本地database、db2 create db db2name
2.连接本地的database、db2 connect to db2name
3.打开存放备份的文件目录
如果有sql,想先创建表结构:db2 -tvf dbname.sql
再执行导入:db2move dbname load;
如果想一次性创建表结构和数据:就用:db2move dbname import;
--更新本地表
update b
set b.列A=a.列A
from openrowset( 'SQLOLEDB ', 'sql服务器名 '; '用户名 '; '密码 ',数据库名.dbo.表名)as a inner join 本地表 b
on a.column1=b.column1
--openquery用法需要创建一个连接
--首先创建一个连接创建链接服务器
exec sp_addlinkedserver 'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 '
--查询
select *
FROM openquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ')
--把本地表导入远程表
insert openquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ')
select * from 本地表
--更新本地表
update b
set b.列B=a.列B
FROM openquery(ITSV, 'SELECT * FROM 数据库.dbo.表名 ') as a
inner join 本地表 b on a.列A=b.列A