开发者社区> 问答> 正文

mysql从linux终端以每个表的单独文件转储

我正在尝试从linux终端获取数据库中表的备份。我正在使用以下脚本来做到这一点

GIT_MYSQL=/data/database/location to store
for T in `mysql -u [user] -h [Hostname] -p [database] -N -B -e 'show tables from database_name'`;
do
    echo "Backing up $T"
    mysqldump --skip-comments --compact -u [user] -p [password] [database] $T > $GIT_MYSQL/$T.sql
done;

我收到以下错误: mysqldump:得到错误:2002:尝试连接时无法通过套接字'/var/lib/mysql/mysql.sock'(2)连接到本地MySQL服务器。我的mysql.sock不存在文件夹

展开
收起
祖安文状元 2020-01-05 18:59:02 708 0
1 条回答
写回答
取消 提交回答
  • 您需要-h [Hostname]选择mysqldump,否则它将尝试从本地数据库而不是从中获取表列表的远程服务器中转储。

    要在命令行上提供密码而不是提示输入密码,您需要使用--password=[password]或-p[password];密码前不能有空格。

    mysqldump --skip-comments --compact -u [user] -h [Hostname] -p'[password]' [database] $T > $GIT_MYSQL/$T.sql
    
    2020-01-05 18:59:12
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Alibaba Cloud Linux 3 发布 立即下载
ECS系统指南之Linux系统诊断 立即下载
ECS运维指南 之 Linux系统诊断 立即下载