MySQL – mysqldump簡明常用命令指南

MySQL – mysqldump簡明常用命令指南

導出數據

1、備份全部數據庫的數據和表結構

mysqldump -uroot -ppassword -A >all.sql

2、只備份表結構,不備份數據

mysqldump -uroot -ppassword -A -d > database.sql

3、只備份數據庫,不備份表結構

mysqldump -uroot -ppassword -A -t > data.sql

4、備份單個數據庫的數據和表結構(只備份數據或者表結構可以用-t或者-d

mysqldump -uroot -password dbname > dbname.sql

5、一次性備份多個數據庫的數據和表結構(只備份數據或者表結構可以用-t或者-d

mysqldump -uroot -ppassword db1 db2 > db2.sql


導入數據

1、直接通過命令重定向導入數據

mysql -uroot -ppassword < all.sql

2、在mysql終端source文件

mysql -uroot -ppassword

mysql> source all.sql

3、還原單個數據庫(同樣可以通過mysql終端source

mysql -uroot -ppassword db1 < db.sql

注意:

導入數據的時候,要先確認一下sql文件是否包含建表建庫語句,不然會導致導入失敗。


壓縮ibdata1空間的方法:

對一些沒用的表進行清空:
truncate table xxx;
然後optimize table xxx;

對壓縮ibdata1空間沒有效果,因爲對共享表空間不起作用。mysql ibdata1存放數據,索引等,是MYSQL的最主要的數據。

簡明壓縮ibdata1的方法是採用mysqldump備份所有數據庫後重建所有數據庫,步驟如下:

  1. mysqldump -uroot -ppassword --all-databases > backup.sql導出所有數據庫的數據和表結構
  2. 停止MySQL服務service。
  3. 刪除ibdata1, ib_logfile0, ib_logfile1三個文件。
  4. 重啓MySQL服務service。
  5. 導入所有備份數據和表結構   mysql-uroot -ppassword < backup.sql。

這樣就會重新建立ibdata1, ib_logfile0, ib_logfile1三個文件,存儲空間就會大大縮小。


備註:實戰示例,解疑答惑。

           --不間端地思考,實時地批判你的工作!

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章