Java開發環境系列:通過命令備份MySQL表結構和數據

有人會說,明明可以使用navicat一鍵導出腳本,爲什麼還要這麼麻煩呢?呵呵,太天真!比如某些政府項目,服務器權限給你限制的死死地,各種VPN、跳板機、端口屏蔽、防火牆讓你一身本領無從下手。能讓你遠程敲命令就不錯了。


命令行下具體用法

mysqldump -u用戶名 -p密碼 -d 數據庫名 表名 > 腳本名;

導出整個數據庫結構和數據

mysqldump -h localhost -uroot -p123456 database > dump.sql

導出單個數據表結構和數據

mysqldump -h localhost -uroot -p123456 database table > dump.sql

導出整個數據庫結構(不包含數據)

mysqldump -h localhost -uroot -p123456 -d database > dump.sql

導出單個數據表結構(不包含數據)

mysqldump -h localhost -uroot -p123456 -d database table > dump.sql

 

如果提示報錯:找不到mysqld.sock

root@menjin:/data/wwwroot# mysqldump -h localhost -uroot -pdev -d f3db > dump.sql

mysqldump: Got error: 2002: "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")" when trying to connect

root@menjin:/data/wwwroot# mysql -u root -p

Enter password:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")

 

解決辦法:

1、看下mysql.sock在什麼位置

root@menjin:/data/wwwroot# find / -name mysql.sock

/opt/lampp/var/mysql/mysql.sock

 

2、命令後加參數,指定mysql.sock的位置

root@menjin:/data/wwwroot# mysqldump -h localhost -uroot -pdev -d f3db > dump.sql -S /opt/lampp/var/mysql/mysql.sock

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