我正在尝试做一个非常标准的程序;将数据库从一个服务器导出到另一个服务器。 (我也许应该告诉你,它是2个不同的虚拟主机酒店,但它应该是同一类型的数据库; MySql)
出口顺利,没有任何问题。
但是当我进行导入时,它会说
#1142 - CREATE command denied to user '*******'@'*******' for table 'ide_commentmeta"
然后我做了一些研究 - 我在Stack Overflow上发现了一些解决方案,这些解决方案让我更进了一步 - 让那个用户获得了特权。但这给了我这个错误:
"#1227 - Access denied; you need (at least one of) the CREATE USER privilege(s) for this operation"
有谁能告诉我如何制作最流畅的expot /导入MySQL数据库,其中用户和数据库名称和密码不同?
提前完成。
// Brokop
答案 0 :(得分:0)
你可以试试这个。它通过ssh将转储管道传输到新服务器:
mysqldump -uU1 -pP1 dbname | ssh LU@serverName "mysql -uU2 -pP2 -D targetDbName"
其中:
U1
是您的导出用户
P1
是相应的密码
LU
是'serverName'的linux用户名
serverName
是您的目标服务器(IP,主机名......)
U2
是导入用户
P2
是相应的密码
注意:
1)我假设您可以将publicKey身份验证设置为serverName
2)U1拥有dbname
数据库的完全导出权
3)U2具有导入数据库的类似root的权限
希望这是有道理和有帮助的。