シェルスクリプトを介してデータベースダンプをインストールする方法は?

シェルスクリプトを介してデータベースダンプをインストールする方法は?

Mysqlデータベースダンプがあります。シェルスクリプトを介して外部LinuxシステムにHudsonと一緒にインストールしたいと思います。

Mysqlスクリプトを入手して他のコンピュータのデータベースで実行するにはどうすればよいですか?他のコンピュータに手動でアクセスするときにsftpを使用してファイルを転送し、sshを使用できることを知っていますが、それを簡単なシェルスクリプトで自動化するにはどうすればよいですか?

ベストアンサー1

$ mysql -p$pass -u$user -h$otherhost $db < dumpfile

これは、生のSQL文を含むdumpfileテキストからのものと見なされます。mysqldump

重要なのは、-pパスワードとパスワードの間にスペースがあってはいけないということです。 (自動ログインを想定しています-p。)パスワードがすぐに従わない場合、mysqlこのオプションは対話形式でパスワードを要求し、別のパスワード引数をデータベース名として処理する必要があると解釈されます。

これを行うには、$userリモートユーザーとしてログインし、テーブルを削除し、テーブルを作成し、テーブルに行を挿入する権限が必要です。 MySQLはユーザーに対して別々のリモートおよびローカル権限を維持するため、これは欠けやすいトラップです。リモートユーザーにあまりにも多くの権限を付与するとセキュリティ上のリスクがあるため、SSL(--ssl*オプション)と組み合わせることをお勧めしますmysql。それ以外の場合は、リモートユーザーがこのような操作を実行できるかどうかわかりません。

おすすめ記事