将数据库管道连接到不同服务器时出现Mysql错误



这里有一个奇怪的错误。我正在执行的命令是:

mysqldump -u root -ppass kodi_video119 | mysql -h192.168.178.73 -u kodi -ppass kodi_video119

当我通过SSH执行它时,一切都很好,但当我将它保存到一个文件并执行这个文件时,我会得到以下错误:

mysqldump: [Warning] Using a password on the command line interface can be insecure.
mysql: [Warning] Using a password on the command line interface can be insecure.
'RROR 1102 (42000): Incorrect database name 'kodi_video119
mysqldump: Got errno 11 on write

我在谷歌上找不到任何关于这个错误号码的结果。用户可以写,当我从SSH直接执行它时,一切都很好。但是,使用相同的SSH会话(作为root用户(仅仅执行嵌入在文件中的命令是不起作用的。

这里出了什么问题?我用nano创建了这个文件,并用nano保存了它。然后chmod+x并执行/测试

默认情况下,使用mysqldump DB时,输出包括表创建语句,但不包括CREATE DATABASE语句。它只是假设您首先创建了一个空模式。

因此,您可以先创建模式:

mysqladmin -h192.168.178.73 create kodi_video119
mysqldump kodi_video119 | mysql -h192.168.178.73 kodi_video119

(为了简洁起见,我省略了-u和-p选项(

或者,您可以使用-B选项,也称为--databases。此选项允许您指定一个或多个数据库,并且在创建和填充表之前,输出包括每个数据库的CREATE DATABASE语句。您可以将它与单个数据库参数一起使用:

mysqldump -B kodi_video119 | mysql -h192.168.178.73 kodi_video119

相关内容

  • 没有找到相关文章

最新更新