有没有办法让SHOW DATABASES
或SHOW TABLES
命令的输出输出到文本文件,类似于SELECT ... INTO OUTFILE
的工作方式?
INTO OUTFILE
在SHOW
命令上使用时会产生语法错误。如果有办法使用cmdline工具(如mysqldump)生成它,我对外部命令开放。
答案 0 :(得分:13)
输出此信息的最佳方法是将数据传输到文件。例如:
mysql -u root -e "SHOW DATABASES" > my_outfile.txt
@ Velko的答案是一个很好的答案,但前提是您可以访问服务器文件系统。如果服务器与客户端位于不同的系统上,则管道将是在本地客户端系统上获取文件的唯一方法。
答案 1 :(得分:4)
你可以试试这个:
SELECT TABLE_SCHEMA INTO OUTFILE '/tmp/stack.txt' FROM information_schema.TABLES GROUP BY TABLE_SCHEMA
另一个例子:
SET @databasesInfo := '';
SHOW DATABASES WHERE (@databasesInfo := CONCAT(@databasesInfo, `Database`, ','));
SELECT @databasesInfo INTO OUTFILE '/tmp/so2.txt';