工具
mysql
mysqldump
應用舉例
匯出匯出全庫備份到本地的目錄
mysqldump -u$user -p$passwd -h127.0.0.1 -p3306 --routines --default-character-set=utf8 --lock-all-tables --add-drop-database -a > db.all.sql
匯出指定庫到本地的目錄(例如mysql庫)
mysqldump -u$user -p$passwd -h127.0.0.1 -p3306 --routines --default-character-set=utf8 --databases mysql > db.sql
匯出某個庫的表到本地的目錄(例如mysql庫的user表)
mysqldump -u$user -p$passwd -h127.0.0.1 -p3306 --routines --default-character-set=utf8 --tables mysql user> db.table.sql
匯出指定庫的表(僅資料)到本地的目錄(例如mysql庫的user表,帶過濾條件)
mysqldump -u$user -p$passwd -h127.0.0.1 -p3306 --routines --default-character-set=utf8 --no-create-db --no-create-info --tables mysql user --where="host='localhost'"> db.table.sql
匯出某個庫的所有表結構
mysqldump -u$user -p$passwd -h127.0.0.1 -p3306 --routines --default-character-set=utf8 --no-data --databases mysql > db.nodata.sql
匯出某個查詢sql的資料為txt格式檔案到本地的目錄(各資料值之間用"製表符"分隔)
例如sql為'select user,host,password from mysql.user;'
mysql -u$user -p$passwd -h127.0.0.1 -p3306 --default-character-set=utf8 --skip-column-names -b -e 'select user,host,password from mysql.user;' > mysql_user.txt
mysql查詢結果匯出到檔案:
select * from tables into outfile '/tmp/tj_cps_20150906';
mysql -h127.0.0.1 -uroot -p***x -p3306 -e"select * from table" > /tmp/tj_cps
匯入恢復全庫資料到mysql,因為包含mysql庫的許可權表,匯入完成需要執行flush privileges;命令
第一種方法: mysql -u$user -p$passwd -h127.0.0.1 -p3306 --default-character-set=utf8 < db.all.sql
第二種方法: 登入mysql,執行source命令,後面的檔名要用絕對路徑. ...... mysql> source /tmp/db.all.sql;
恢復某個庫的資料(mysql庫的user表)
第一種方法: mysql -u$user -p$passwd -h127.0.0.1 -p3306 --default-character-set=utf8 mysql < db.table.sql
第二種方法: 登入mysql,執行source命令,後面的檔名要用絕對路徑. mysql -u$user -p$passwd -h127.0.0.1 -p3306 --default-character-set=utf8
mysql> use mysql;
mysql> source /tmp/db.table.sql;
恢復mysql伺服器上面的txt格式檔案(需要file許可權,各資料值之間用"製表符"分隔)
mysql -u$user -p$passwd -h127.0.0.1 -p3306 --default-character-set=utf8 ......
mysql> use mysql;
mysql> load data infile '/tmp/mysql_user.txt' into table user ;
恢復mysql伺服器上面的csv格式檔案(需要file許可權,各資料值之間用"逗號"分隔)
mysql -u$user -p$passwd -h127.0.0.1 -p3306 --default-character-set=utf8 ...... mysql> use mysql;
mysql> load data infile '/tmp/mysql_user.csv' into table user fields terminated by ',';
恢復本地的txt或csv檔案到mysql
mysql -u$user -p$passwd -h127.0.0.1 -p3306 --default-character-set=utf8 ...... mysql> use mysql; # txt mysql> load data local infile '/tmp/mysql_user.csv' into table user; # csv mysql> load data local infile '/tmp/mysql_user.csv' into table user fields terminated by ',';
注意事項
關於mysql連線
-u$user 使用者名稱
-p$passwd 密碼
-h127.0.0.1 如果連線遠端服
-p3306 埠
--default-character-set=ut
關於mysql引數
--skip-column-names 不顯示
-b 以批處理的方式執行mysql
-e 執行命令後,退出
關於mysqldump引數
-a 全庫備份
--routines 備份儲存過程和?
--default-character-set=ut
--lock-all-tables 全域性一致
--add-drop-database 在每個create語句之前增加乙個drop table.
--no-create-db 不輸出creat
--no-create-info 不輸出cre
--databases 將後面的引數都
--tables 第乙個引數為庫名
關於load data語法
如果load data語句不帶local關鍵字,就在mysql的伺服器上直接讀取檔案,且要具有file許可權.
如果帶local關鍵字,就在客戶端本地讀取資料檔案,通過網路傳到mysql.
load data語句,同樣被記錄到binlog,不過是內部的機制.
mysql 匯入匯出 mysql匯入匯出sql檔案
window下 1.匯出整個資料庫 mysqldump u 使用者名稱 p 資料庫名 匯出的檔名 mysqldump u dbuser p dbname dbname.sql 2.匯出乙個表 mysqldump u 使用者名稱 p 資料庫名 表名 匯出的檔名 mysqldump u dbuser p...
mysql匯入匯出教程 mysql匯入匯出資料方法
摘要 在平時的mysql應用中,總會碰到匯入資料,匯出資料,當然有很多方法,這篇文章,主要介紹應用mysqlmysqldump命令進行資料匯入匯出,希望對大家有所幫助。一 mysql匯入檔案或資料或執行相關sql mysql h主機位址 u使用者名稱 p使用者密碼 1.檔案形式。shell命令列 m...
mysql 匯入匯出命令 MySQL匯入匯出命令
1.匯出整個資料庫 mysqldump u 使用者名稱 p 資料庫名 匯出的檔名 2.匯出乙個表 mysqldump u 使用者名稱 p 資料庫名 表名 匯出的檔名 3.匯出乙個資料庫結構 d 沒有資料 add drop table 在每個create語句之前增加乙個drop table 4.匯入資...