繁体   English   中英

通过Bash Mysql查看转储

[英]Mysql View Dump via Bash

我不知道这是否是正确的方法,但这是方案。 我们在多个位置有多个服务器,每个服务器上都有一个mysql数据库。 每个数据库结构都完全相同。 目标是将每个数据库的一个或两个表放在一个位置上。

我不想在一堆不同的服务器上运行一堆笨蛋。 我想在一台服务器上运行所有操作,即统一数据库所在的服务器。

因此,使用ssh和mysqldump通过bash转储表很容易。 这里的挑战是我需要的数据不在表中,而在视图中。 因此,获取数据需要执行mysql -e而不是mysqldump。

但是此方法将数据作为数据而不是作为可导入的.sql文件转储到文件中。

上面的任何指导和想法都是很棒的。

谢谢

更新:

好的,所以目标是从合并服务器远程运行上述命令并在本地获取文件。然后,该过程可以将视图中的数据导入具有与视图相同结构的普通表中。

您可以使用SELECT * INTO OUTFILE在视图中转储数据。 例如

## Exporting data
SELECT * INTO OUTFILE '/tmp/my_out.text' 
FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' 
FROM m_view;

## Creating migration table
CREATE TABLE m_m_test LIKE migrate_table;

## Loading data from file
LOAD DATA INFILE '/tmp/my_out.text' INTO TABLE m_m_test 
FIELDS TERMINATED BY ',' 
LINES TERMINATED BY '\n';

来源: https//www.pythian.com/blog/can-just-dump-data-view-using-mysqldump/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM