3

コマンドラインからDBIx::Class:Schema::Loaderを使用して、Catalyst アプリ用の DBIx::Class のデータベースからスキーマを生成しています。これは私が使用するコマンドです:

script/myapp_create.pl model DB DBIC::Schema myapp::Schema create=static \
components=TimeStamp,PassphraseColumn dbi:mysql:mydb 'root' '' '{ AutoCommit => 1 }'

ただし、データベースが別のマシン上にあるため、このコマンドは現在機能していません。接続先の IP を指定するにはどうすればよいですか? ありがとう!

4

2 に答える 2

2

私はそれを行う方法を考え出しました。最後のハッシュの後に別のハッシュを渡すと、そのハッシュが接続情報に使用されるようです。したがって、これを最後に追加するだけです:

'{host=>"ip_here"}'

問題を処理しました。完全なコマンドは次のとおりです。

script/myapp_create.pl model DB DBIC::Schema myapp::Schema create=static \
components=TimeStamp,PassphraseColumn dbi:mysql:mydb 'root' ''           \
'{ AutoCommit => 1 }' '{host=>"ip_here"}'
于 2013-01-26T01:19:48.713 に答える
0

dbi:mysql:... パラメータは通常の DBI 接続文字列です。最初の : の後にデータベース ドライバー (DBD) が続き、2 番目の後に DBD 固有のパラメーターが続きます。リモート マシンでデータベースを指定する方法については、DBD::mysql のドキュメントを参照してください。

于 2013-01-27T00:59:07.640 に答える