我想备份我的 MySQL 数据库,但我不小心用了mysql
command 而不是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),此命令显然会等待输入。
由于没有任何输入,数据库就不会改变,因此不会对数据库造成任何损害(您只是杀死了访问数据库的客户端,而不是数据库服务器进程!)