将现有表数据从只读数据库复制到读写数据库MySQL

时间:2012-04-02 08:37:30

标签: mysql sql

我有两个数据库,一个我只有读访问权限,而另一个我有读写访问权限。我们分别称他们为A和B.

A中有一个表我需要将其(包括其数据和结构)复制到B中。 为了复制它的结构,我使用了'LIKE'关键字,但它没有用。所以,我也无法复制数据。

你们有什么进一步的建议吗? 提前谢谢。

2 个答案:

答案 0 :(得分:2)

看看mysqldump。它允许您将表数据/结构备份到服务器A的文件,并在服务器B上恢复它。

mysqldump [options] db_name [tbl_name ...]

答案 1 :(得分:2)

要将表从一个数据库复制到另一个数据库,您可以执行以下操作:

DROP TABLE IF EXISTS backup_db.table1; 
CREATE TABLE backup_db.table1 SELECT * FROM live_db.table1; 

或者您可以使用mysqldump

mysqldump -u root -p --opt dbname table1  > ~/export.sql

要将其放入其他数据库,您可以:

mysql -u root -p dbname2 < ~/export.sql

编辑:另外,请注意,如果您有主设备和从设备,这将自动发生。当主设备被读/写时,从设备是只读的。来自主服务器的数据将自动复制到从服务器,但您需要两台服务器。仅供参考。