gpt4 book ai didi

mysql - 在不导出 SQL 文件的情况下在 Linux CLI 中复制 MySQL 数据库

转载 作者:太空宇宙 更新时间:2023-11-04 10:43:51 25 4
gpt4 key购买 nike

我有一个 MySQL 数据库,我想使用 Ubuntu Linux CLI 复制它,而无需先下载 MySQL 文件。我尝试了以下命令:

mysql -uroot -e'mysqldump -uroot 数据库旧 | mysql -uroot 备份 db_new;'

但是出现了这个错误:第 1 行的错误 1064 (42000):您的 SQL 语法有误;查看与您的 MySQL 服务器版本对应的手册,了解要使用的正确语法。

我做错了什么?我正在寻找的是要创建的 db_new 包含与 db_old 相同的数据(换句话说,复制 db_old 并将新数据库命名为 db_new,所有这些都在一个命令中完成,无需将数据导出到文件)。

最佳答案

首先,创建新的数据库

mysql -uroot -pyourpasswd -e "Create database db_new;"

然后运行下面的(不需要执行“-e”)

mysqldump -uroot -pyourpasswd -n db_old | mysql -uroot -pyourpasswd db_new;

来自手册页:

mysqldump 对于通过复制数据填充数据库也非常有用 从一个 MySQL 服务器到另一个:

   shell> mysqldump --opt db_name | mysql --host=remote_host -C db_name

“-n”选项是“--no-create-db”的缩写

如果您的根连接不需要密码(不推荐),则从所有语句中删除“-pyourpasswd”

关于mysql - 在不导出 SQL 文件的情况下在 Linux CLI 中复制 MySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33908329/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com