0

私はすべて、

ユーザーとパスワードが異なる一連の MYSQL データベースがありますが、DB 構造はすべてのデータベースで同じです。すべてのユーザーに対して同じユーザー名とパスワードを使用してユーザーを作成することはできず、すべてのユーザーに対して操作をすばやく実行する必要があります。

cron経由で実行するbashスクリプトについて考えていました。

なにか提案を?私はこのようなことを考えていましたが、うまくいきません:(

#!/bin/bash
uconn=(
            'mysql -u user_db1         --password=pass_db1      db1      '
            'mysql -u user_db2         --password=pass_db2      db2      ' 

             )

for f in "${uconn[@]}"
do
    exec ${f}
    echo `mysql show tables`
    echo `mysql exit`
done
exit
4

2 に答える 2

1

文書化された方法を使用しないのはなぜですか?

do
  ${f} <<EOF
show tables
\\q
EOF
done
于 2012-09-02T00:57:49.157 に答える
0

@Ansgar Wiechersを考慮して完全なコードを貼り付けるだけです:

#!/bin/bash
uconn=(
            'mysql -u user_db1 --password=pass_db1  db1'
            'mysql -u user_db2 --password=pass_db2  db2' 

             )

for f in "${uconn[@]}"
    do
      ${f} <<EOF
    show tables
    \\q
    EOF
    done
exit

ローカル マシンからリモート マシンにコードを実行するには、次のようにします。

ssh ssh_user@mydomain.com 'bash -s' < /local/path/to/multiple_db_connections.sh 

multiple_db_connections.shの内容は上記のコードです

于 2012-09-02T08:55:03.027 に答える