mysqldump的使用简介

      有时候要对线上数据进行操作, 需要提前备份下数据。

      有时候需要将线上数据dump下来进行分析和验证。

      来看下mysqldump的使用。

      

 

     导出数据:mysqldump -h localhost -u root -p  -P 17538  --single-transaction --databases taoge --tables x > x1.sql

     其中taoge是db名, x是table名, x1.sql是导出文件。

 

 

     导入数据方式一(先创建新的db taoge1):

     mysql -h localhost -u root -p  -P 17538  --database taoge1 < x1.sql

     其中taoge1是导入的目标db名, x1.sql是待导入的文件,也就是把x1.sql中的table x导入到taoge1这个db中去。        

 

 

     导入数据方式二(先创建新的db taoge1):

     在mysql中进行操作, use taoge1; 然后source /home/ubuntu/x1.sql

 

 

     其他Cases:

     如果想导出taoge这个db的所有tables,  可以这么搞:

     mysqldump -h localhost -u root -p  -P 17538  --single-transaction --databases  taoge  > x1.sql

 

     导入这么搞:

     mysql -h localhost -u root -p  -P 17538  --database taoge1 < x1.sql    

 

     如果想导出所有dbs,可以这么搞:

     mysqldump -h localhost -u root -p  -P 17538  --single-transaction --all-databases > x1.sql

 

     导入这么搞(强烈不建议, 下面会有解释):

     mysql -h localhost -u root -p  -P 17538 < x1.sql     

     

 

      注意风险:

      1. 如果是导入tables到目标db中, 那么目表db中与x1.mysql对应tables会被覆盖或者新建。 强烈建议手动新建一个空的db, 如上述的新db taoge1, 然后导入。

      2. 如果是导入dbs库到目标机器中, 那么目表机器中与x1.sql对应dbs/tables会被覆盖或者新建。 强烈不建议这么做。

          

 

      最后一个问题,当mysql服务端位于本地时,怎么确认它是在监听哪个端口呢?

 

     不多说。

 

 

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值