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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券