数据迁移Oracle、MySQL

本文详细介绍了如何进行MySQL数据库的导出与导入,包括使用mysqldump命令及在新库上的数据导入。同时,也阐述了Oracle数据库的迁移步骤,包括导出、新数据库上创建表空间、用户授权以及数据导入。内容涵盖命令行操作和关键参数设置。
摘要由CSDN通过智能技术生成

数据迁移MySQL、Oracle

一、Mysql导出单一数据库库

1 登陆MySQL

mysql  -h  localhost -u root -p 

2 mysqldump命令格式

mysqldump -h IP -u 用户名 -p -d 数据库名 > 导出的文件名
参数解析:
-h:表示host地址
-u:表示user用户
-p:表示password密码
-d:表示不导出数据
/*注意:
(1)-p 后面不能加password,只能单独输入数据库名称
(2)mysqldump是在cmd下的命令,不能再mysql下面,即不能进入mysql的(如果进入了mysql,得exit退出mysql后才可以的。)
*/

3 mysqldump 导出数据例子

mysqldump -h localhost -u root -p dbtest > C:\Users\Administrator\Desktop\users2.sql
mysqldump -h localhost -u root -p dbtest > /data/backup/dbtest.sql

4 在新库上导入数据

# 登录新的数据库后
1 创建和新的数据库 (mysqldump导出单库时,只导出表结构和表数据,没有建库语句)
create   database   dbtest;
user  dbtest;
2 执行.sql文件
source   /data/backup/dbtest.sql;  # 注意dbtest.sql放到mysql有权限操作的路径,修改dbtest.sql的所有者为mysql
3 创建用户授权
CREATE USER 'mingyue'@'%' IDENTIFIED BY 'password';   # % 代表用户可以从任何机器上登录,localhost代表只能从本机登录
GRANT ALL PRIVILEGES ON `testdb`.* TO 'mingyue'@'%';
4 查看用户的权限
SHOW GRANTS FOR mingyue@localhost;
SHOW GRANTS FOR mingyue@%;

二、Oracle数据库的迁移

这里介绍的是以用户为单位的导出数据,shemas

1 导出原有Oracle数据库

# 1 创建存放导出数据的目录
select * from dba_directories where DIRECTORY_NAME='DIR_DUMP';  
create directory dump_dir as '/backup/dumpdir';	
dump文件路径   /backup/dmp
# 2 给oralce普通用户授予导出数据库的权限
grant read, write on directory DIR_DUMP  to ehcportal_jdy;
grant exp_full_database,imp_full_database to ehcportal_jdy;
# 3 导出oralce数据库 
    expdp username/password@内网IP:1521/orcl   directory=dir_dump  dumpfile=testdb-20211209.dmp schemas=testdb logfile=export-testdb.log compression=ALL

2 在新数据库上创建表空间、用户、授权

# 创建表空间
create  tablespace  testdb   datafile'/data/oracle/data/orcl/testdb.dbf'  size 512M
autoextend on next 512M maxsize unlimited extent management local;

create user mingyue identified by "123456" 
default tablespace testdb profile DEFAULT;

grant connect,resource, dba to mingyue;
grant exp_full_database,imp_full_database to mingyue;
# 删除用户和表空间
drop  user  mingyue  cascade;
DROP TABLESPACE   dbtest  INCLUDING CONTENTS AND DATAFILES;

3 在新的数据库上导入数据

impdp  mingyue/123456  directory=dump_dir  dumpfile=testdb-20211209.dmp  logfile=testdb-20211209.log 

4 其他导出oracle数据的语句

# 1 按用户导出数据
expdp  scott/123456@orcl   schemas=scott  dumpfile=expdb.dmp derectory=dir_dump logfile=export.log;
# 2 并行进程parallel
expdp  scott/123456@orcl  derectory=dir_dump   dumpfile=expdb.dmp parallel=40  job_name=scottt3
# 3 按表名导
expdp  scott/123456@orcl  TABLES=table1,table2  dumpfile=expdb.dmp  derectory=dir_dump;
# 4 按查询条件导
expdp  scott/123456@orcl  dumpfile=expdb.dmp derectory=dir_dump  Tables=emp query='WHERE deptno=20';
# 5 按表空间导
expdp  system/manager  dumpfile=expdb.dmp derectory=dir_dump   TABLESPACES=temp,example;
# 6 导整个数据库
expdp  system/manager   dumpfile=full.dmp derectory=dir_dump   FULL=y;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值