如何導出和導入mysql數據(數據遷移)


1. 導出數據庫數據
   mysqldump -uroot -p dp_db > dumpout.sql
   其中 root是賬戶名
        dp_db是需要導出的數據庫名稱
        dumpout.sql存儲導出的數據
 
2. 將導出的數據dumpout.sql放到你的目標機器上(如果是遠程目標機器的話,直接將dunmpout.sql copy到目標機器就行)。這里假設cp到主目錄下~/
 
3. 在目標機器的數據庫里建立新數據庫,這里建立名為dp_db_bak的數據庫
   mysql> create database dp_db_bak
 
4. 向dp_db_bak數據庫導入數據
   mysql -uroot -p dp_db_bak < ~/dumpout.sql
   其中 root是賬戶名
        db_db_bak是新數據庫
        ~/dumpout.sql是第一步導出的數據
 
P.S. 如果在導入導出數據的時候遇到文件太大異常退出的情況,可使用split/cat來進行文件的分割和合並
   mysqldump -uroot -p dp_db | split -b 10m - tempfile
   cat all_tempfile > targetfile
 
其他方法:
Mysql source命令在導入大數據時顯得非常有用。雖然Mysql Administrator軟件也不錯,但就穩定性和效率性來說還是source占優。
使用方法:
Windows下將sql數據庫備份拷貝到磁盤目錄如:D:\db.sql,cmd進入命令行。
1、先使用命令mysql -uroot -p登陸mysql服務器
2、然后執行相關命令導入數據。
mysql> use dbtest; //設置當前要導入數據的dbtest數據庫 
mysql> set names utf8; //設置編碼 
mysql> source D:\db.sql; //導入數據
ok,完成。當然數據庫備份用Mysql Administrator是非常方便的



Mysql導出表結構及表數據 mysqldump用法
    命令行下具體用法如下:  mysqldump -u用戶名 -p密碼 -d 數據庫名 表名 腳本名;

    1、導出數據庫為dbname的表結構(其中用戶名為root,密碼為dbpasswd,生成的腳本名為db.sql)
    mysqldump -uroot -pdbpasswd -d dbname >db.sql;

    2、導出數據庫為dbname某張表(test)結構
    mysqldump -uroot -pdbpasswd -d dbname test>db.sql;

    3、導出數據庫為dbname所有表結構及表數據(不加-d)
    mysqldump -uroot -pdbpasswd  dbname >db.sql;

    4、導出數據庫為dbname某張表(test)結構及表數據(不加-d)
    mysqldump -uroot -pdbpasswd dbname test>db.sql;


指定分隔符導出數據(貌似必須在本機才能正常執行),步驟:
1. cd /tmp
2. mkdir mysqldata
3. chown mysql:mysql mysqldata
4. mysqldump -h127.0.0.1 -uroot -p123456 -T/mysqldata/ --fields-terminated-by=@@, dbname tablename
 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM