比如你本机叫scott/tiger,需要连接远程服务器上的exptest/exptest,那你这里就需要些成"connect to exptest identified by exptest",第四步导出的时候写"expdp scott/tiger ";而且如果导出表的话,在表前面还要加上远程那个用户名,例如要导出testTable,则要写成"expdp scott/tiger tables=exptesttestTable "这样
其次,要保证你字都没打错,如你建立的link是orlink 还是ytlink,还有第三步里是orcl打成了oacl。
远程Oracle数据库导出到本地用exp命令。
导出一个完整数据库:
1、win键+R键,输入cmd,打开命令提示符。
2、执行
exp 用户名/密码@实例名 file=导出路径\文件名 log=导出路径\日志名 full=yexp本地导出与imp本地导入exp命令:
1 exp username/psw@TEST file=d:testdmp full=y2 exp username/psw@TEST file=d:testdmp owner=(ly)3 exp username/psw@TEST file= d:testdmp tables=(grid1,grid2)1其中一是将Test(与某一数据库对应的oracle服务名)数据库进行整体导出2将属于用户ly的所有表导出
3将表grid1,与grid2导出
d:testdmp是导出的文件地址
imp命令:
1 imp system/psw@TEST file=d:testdmp
2 imp system/psw@TEST full=y file=d:testdmp ignore=y3 imp system/psw@TEST file=d:testdmp tables=(grid1)ignore=y表示如果被导入的数据库中某个表已经存在就忽略不导入那个表3表示只导入grid1这个表
在导入导出前要先测试下对应的数据库是否是通的:tnsping test来测试,同样test是服务名所有命令可在cmd下执行
用exp/imp远程 *** 作数据库
对ORACLE数据库进行远程 *** 作,假设数据库在1921681110上,具体方法如下:
一、在客户端创建和服务端对应的服务名
方法1:
修改tnsnamesora文件
加入远程服务器的命名:
Sql代码
TEST_ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1921681110)(PORT = 1521)))
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
方法2:
在oracle客户端,打开net manager。
创建一个服务命名TEST_ORCL,主机IP为:1921681110,服务名orcl,端口1521二、测试远程服务器是否畅通
进入到cmd后,执行命令:tnsping TEST_ORCL。
三、远程 *** 作数据库
导出:
Sql代码
1:exp username/password@TEST_ORCL file=bak_filepath2:exp username/password@TEST_ORCL full=y file=bak_filepathusername 用户名,password 密码,TEST_ORCL 客服端服务名,bak_filepath 备份文件存放的路径导入:
Sql代码
1:imp username/password@TEST_ORCL file=bak_filepath full=y2:imp username/password@TEST_ORCL/database_name file=bak_filepath full=y3:imp username/password@TEST_ORCL file=bak_filepath fromuser=fromadmin touser=toadminusername 用户名,password 密码,TEST_ORCL 客服端服务名,bak_filepath 备份文件存放的路径fromadmin 备份数据的用户名,toadmin 还原数据库的用户名。database_name 还原到那个数据库上full=y 将数据库整体导出,包括表结构等。首先,你自己的电脑上必须要安装了MYSQL服务器。
第二步,进入DOS命令状态,使用命令
mysqldump -h 主机名称 -u 用户名 -p 密码 数据库名称 >导出文件存放位置
例如:mysqldump -h 1014215632 -u root -p admin test >c:\testsql
将远程数据库服务的test数据库导入到本地C盘,名称为testsql用途:将远程服务器的数据库拷到本地。
Java代码
复制代码代码如下:
mysqldump -h '114212111123' -uROSE -pxxxooo --opt --compress ITSM --skip-lock-tables | mysql -h localhost -uroot -proot ITSMC
解释:
114212111123 远程服务器名称
ROSE 远程数据库登录名
xxxooo 远程数据库登录密码
ITSM远程数据库名(即:复制的源)
localhost 本地数据库名称(一般情况下都是这个)
root 本地数据库登录名(一般情况下都是这个)
root 本地数据库登录密码(一般情况下都是这个)
ITSMC 本地(即:复制的目的)
sql解释:
mysqldump 是mysql的一个专门用于拷贝 *** 作的命令
--opt *** 作的意思
--compress 压缩要传输的数据
--skip-lock 忽略锁住的表(加上这句能防止当表有外键时的报错)
-tables 某数据库所有表
-h 服务器名称
-u 用户名(后面无空格,直接加用户名)
-p 密码(后面无空格,直接加密码)
注意:
-u、-p的后面没有空格,直接加用户名和密码!!!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)