天天看點

mysqldump常用導出導入指令

1. mysqldump導出為sql檔案

mysqldump 資料庫名 --host=主機 --port=端口 -u使用者名 -p密碼 --where="過濾條件" --tables 資料表 > 導出檔案路徑.sql
           

示例:

mysqldump mydb --host=127.0.0.1 --port=3306 -uroot -p123456 --where="id = 1" --tables mytable1 > G:\test\mytable1.sql
           

其他參數:

導出所有庫:--all-databases
導出標明庫:--databases db1 db2
           

2. 導入sql檔案到資料庫

  1. 登入到mysql中,使用source
use 資料庫名;
source 檔案路徑.sql;
           

示例:

use mydb2;
source G:/test/mysql/mytable1.sql;
           
  1. 使用mysql指令
mysql --host=主機 --port=端口 -u使用者名 -p密碼 資料庫名 < 檔案路徑.sql
           

示例:

mysql --host=127.0.0.1 --port=3306 -uroot -p123456 mydb2 < G:/test/mysql/mytable1.sql
           

注意編碼問題:

set names utf8;

3. (直達)mysqldump直接導出到另外一個資料庫

mysqldump 資料庫名 --host=主機 --port=端口 -u使用者名 -p密碼 --where="過濾條件" --tables 資料表 | mysql --host=主機 --port=端口 -u使用者名 -p密碼 目标資料庫名
           

示例:

mysqldump mydb --host=127.0.0.1 --port=3306 -uroot -p123456 --where="id = 1" --tables mytable1 | mysql --host=127.0.0.1 --port=3306 -uroot -p123456 mydb2
           

4. 常見問題處理

  1. mysqldump報錯:

    Unknown table 'COLUMN_STATISTICS' in information_schema (1109)

  解決方法:

  方法1. 添加參數

--column-statistics=0
           

  方法2. 修改mysql配置檔案,添加全局配置:

[mysqldump]
column-statistics=0
           
  1. 中文亂碼問題

    解決方法:添加指定字元集參數,比如,utf8、gbk

    --default-character-set=gbk
               

繼續閱讀