如何使用shell脚本在linux中存储mysql数据库

如何使用shell脚本在linux中存储mysql数据库,mysql,linux,shell,Mysql,Linux,Shell,如何使用shell脚本在linux中存储mysql数据库 脚本: mysql -uusername -hhostname -ppassword -e "show databases" 我想你想要这个: 如果文件存在,则输出将附加到现有文件(/tmp/mysqltee) 如您所见,输出也显示在屏幕上。这可能不是 你想要什么,特别是如果产量很大。。。你可以用 mysql -e "select table_name from user_tables" database > output.tx

如何使用shell脚本在linux中存储mysql数据库

脚本:

mysql -uusername -hhostname -ppassword -e "show databases"
我想你想要这个:

如果文件存在,则输出将附加到现有文件(/tmp/mysqltee)

如您所见,输出也显示在屏幕上。这可能不是 你想要什么,特别是如果产量很大。。。你可以用

 mysql -e "select table_name from user_tables" database > output.txt

mysql数据库output.txt 从操作系统命令行。(您可能还需要使用-u、-p和/或-h,使用 与“正常”启动mysql客户端时相同。)

这可能会对您有所帮助

 #!/bin/bash
 results=($(mysql --user root -pwelcome -Bse "show databases;"))

下面的代码将把所有数据库名称检索到一个名为dbnames的变量中。在这之后,它将进行迭代,只回显带有每个名称的字符串

#!/bin/bash
dbnames=`mysql --user=user --password=password -se "show databases;"`

for x in $dbnames;
do
    echo "There is a database called $x"
done;

我想将所有数据库名称存储在一个数组中,这样我就可以调用它们,并使用for逐个对它们执行查询loop@adarshhota
shell_exec
是PHP函数,这个问题是关于shell脚本的OP希望从shell脚本中执行此操作,而无需进入mysql本身,而这个代码片段可能会解决这个问题,确实有助于提高你的文章质量。请记住,您将在将来回答读者的问题,而这些人可能不知道您的代码建议的原因。如果我只想在数据库名称上显示的值,假设是第二个数据库,我应该使用什么命令。将requiredRow和count变量引入脚本。循环中每次迭代的增量计数,并将其与requiredRow值进行比较。使用
requiredRow=$((requiredRow+1))
执行增量。
 #!/bin/bash
 results=($(mysql --user root -pwelcome -Bse "show databases;"))
#!/bin/bash
dbnames=`mysql --user=user --password=password -se "show databases;"`

for x in $dbnames;
do
    echo "There is a database called $x"
done;