[解決済み] コマンドライン引数でPostgreSQLの.sqlファイルを実行する
2022-03-16 13:39:26
質問
何千ものINSERT文を含むいくつかの.sqlファイルを持っており、テーブルに追加するためにPostgreSQLデータベースでこれらの挿入を実行する必要があります。ファイルが非常に大きいため、ファイルを開いてINSERT文をエディタウィンドウにコピーし、そこで実行することは不可能です。インターネットで、PostgreSQLのインストール先のbinフォルダーに移動して、以下を使用できることを知りました。
psql -d myDataBase -a -f myInsertFile
私の場合
psql -d HIGHWAYS -a -f CLUSTER_1000M.sql
その後、ユーザーのパスワードを聞かれますが、何も入力できず、エンターキーを押すとこのようなエラーが表示されます。
psql: FATAL: ユーザー "myUsername" のパスワード認証に失敗しました。
なぜパスワードを入力させてくれないのでしょうか。これらのスクリプトを実行できることが重要なので、これを回避する方法はありますか?
pg_hba.confファイルに以下のような構成で新しいエントリーを追加することで、この問題を回避することができました。
# IPv6 local connections:
host myDbName myUserName ::1/128 trust
pg_hba.confファイルは通常、PostgreSQLをインストールした'data'フォルダにあります。
どのように解決するのですか?
パスワードの入力は4つの選択肢があります。
-
環境変数PGPASSWORDを設定する。詳しくはマニュアルをご覧ください。
http://www.postgresql.org/docs/current/static/libpq-envars.html -
パスワードの保存に .pgpass ファイルを使用します。詳しくはマニュアルをご覧ください。
http://www.postgresql.org/docs/current/static/libpq-pgpass.html - 特定のユーザーに対して、"trust authentication"を使用します。 http://www.postgresql.org/docs/current/static/auth-methods.html#AUTH-TRUST
-
PostgreSQL 9.1以降では、次のようなことも可能です。
接続文字列を使用する
:
https://www.postgresql.org/docs/current/static/libpq-connect.html#LIBPQ-CONNSTRING
関連
-
[解決済み] psql: FATAL: データベース "<user>" が存在しない
-
[解決済み] Windowsのコマンドラインに'which'に相当するものはありますか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] Bashでコマンドライン引数を解析するには?
-
[解決済み] PostgreSQL コマンドラインユーティリティ: psql を終了する方法
-
[解決済み] MySQLでコマンドラインを使用してユーザーアカウントのリストを取得するにはどうすればよいですか?
-
[解決済み] コマンドラインから .bash_profile を再読み込みする方法は?
-
[解決済み] コマンドラインからすべての環境変数をリストアップ
-
[解決済み] コマンドライン引数の読み方・処理方法は?
-
[解決済み】rakeタスクにコマンドライン引数を渡す方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
PostgreSQLのユーザーログイン失敗時の自動ロック解決策
-
エクセルテーブルのデータをpostgresqlのデータベースにインポートする方法
-
Postgresql データベース timescaledb timescaledb 問題 大容量データテーブルをスーパーテーブルに変換すること
-
Postgresqlのデータベース権限まとめ
-
postgreSQLのクエリ結果に自己インクリメントシーケンス演算が追加されました。
-
oracle_fdwを介してOracleデータにアクセスするためのPostgreSQLの手順
-
PostgreSQLのデータベースでLIKE文の効率を確保する方法(推奨)
-
postgresqlのjsonbデータの問い合わせと変更方法
-
[解決済み] Psql はサーバーに接続できませんでした。そのようなファイルまたはディレクトリがありません、5432エラー?
-
[解決済み] psql'に非対話的にパスワードを指定するには?