使用 mysql 命令代替 mysqldump

使用 mysql 命令代替 mysqldump

我想备份我的 MySQL 数据库,但我不小心用了mysqlcommand 而不是mysqldump。因此我执行了:

/usr/local/mysql5/bin/mysql -u db_username -p db_name > db_backup.sql

代替:

/usr/local/mysql5/bin/mysqldump -u db_username -p db_name > db_backup.sql

我被要求输入数据库密码,但之后什么也没发生。进程没有反应,我不得不终止它。这会损坏我的数据库吗?

答案1

mysql 命令是一个交互式 shell,您可以在其中执行 SQL 查询(如SELECT * FROM accounts;)。如果没有 shell 重定向,它将打印出一个提示(输入密码后),表示您现在可以输入命令。此命令正在从 stdin 读取;如果没有 quit 命令(或<Ctrl>+<D>表示 EOF),此命令显然会等待输入。

由于没有任何输入,数据库就不会改变,因此不会对数据库造成任何损害(您只是杀死了访问数据库的客户端,而不是数据库服务器进程!)

相关内容