.sql ファイルの一括インポート

.sql ファイルの一括インポート

インポートするディレクトリには.sqlファイルがたくさんあります。これは手動で行うこともできますが、スクリプトの目的で一括適用できる必要があります。どうすればいいですか?どのオプションとコマンドの組み合わせが必要ですか?

mysqlimportコマンドは次のとおりです。

mysqlimport [options] db_name textfile1 [textfile2 ...]

すべてのテキストファイルを最後に追加できる必要があります。可能であれば、複雑なforループよりもコマンドを好みます。

どんな提案がありますか?

ベストアンサー1

ワイルドカードの使用:

mysqlimport [options] db_name /path/to/sql/files/*

ディレクトリにSQL以外のファイルがある場合、ファイル名の一部はインポートするファイルのサブセットと同じになることがあります。たとえば、両方が次に終わる場合.sql:

mysqlimport [options] db_name /path/to/sql/files/*.sql

DOS / Windowsから来た場合は、これが行われる理由がわからない場合があります。 Unixyシステムでは、シェルはワイルドカードを拡張するため、プログラム(mysqlimportこの場合)は独自の処理を実行する必要はありません。そのため、引用した使用法メッセージにファイルを個別に提供したいと思います。上記のコマンドを使用すると、ファイルがそのように表示されます。パターンが一致しない場合、プログラムはワイルドカードのみをチェックし、シェルはそれをプログラムにそのまま渡し、それを処理するより良い方法はありません。

おすすめ記事