.sqlファイルをデータベースにインポートできません。
解決したいこと
postgreSQLを使っています。
エクスポートしたデータベースダンプを、ローカルのデータベースにインポートしたいです。
インポート中にエラーが発生しました。
解決方法を教えて下さい。
OS:Mac
postgreSQLのバージョン 11.14
(本番環境でもpostgreSQLのバージョンが11なので11を使っています)
発生している問題・エラー
インポートするために実行したコマンド
% psql database_1 < (パス)/aaa.sql
コマンドを実行した結果出てきた文
略
.
.
.
invalid command \N
invalid command \N
invalid command \N
invalid command \.
ERROR: syntax error at or near "4154"
LINE 1: 4154 7482 126.40.52.41 0101000020E61000006D718DCF64736140323...
^
Query buffer reset (cleared).
.
.
.
略
(同じようなエラーが続いて長くなっているのと、DBの中身が見えてしまうので省略しています。)
このコマンドを試した結果、
psql -d database_1
でpostgreSQLに接続し、
select * from users;
と打つと、usersのテーブルは表示されます。
しかし、あるはずのテーブルや、テーブルの中身がいくつか抜け落ちてしまっています。
おそらくエラーのせいだと思いますが、このエラーを回避する方法はあるでしょうか?
自分で試したこと
% pg_restore -d database_1 (パス)/aaa.sql
でインポートも試みましたが、
pg_restore: [archiver] input file appears to be a text format dump. Please use psql.
と表示され、インポートできませんでした。
2022.2.7 追記
psql --set ON_ERROR_STOP=on database_1 < aaa.sql
でリストアしてみたら、
ERROR: could not open extension control file "/usr/local/opt/postgresql@11/share/postgresql@11/extension/postgis.control": No such file or directory
というエラーが出てきて止まってしまいました。
postgisが無いのかなと思い、
brew install postgis
でpostgisをインストールしましたが、何も変わりませんでした。
2022.2.10 追記
こちらのページなどを参考にしながら、一度全てのpostgresを消去し、新たにpostgresql@11をbrewでインストールしたのですが、
2022-02-10 23:45:48.398 JST [97486] FATAL: lock file "postmaster.pid" already exists
2022-02-10 23:45:48.398 JST [97486] HINT: Is another postmaster (PID 97426) running in data directory "/usr/local/var/postgresql@11"?
というエラーがでて、postgresqlが起動できません。
思えば、このエラーが出るのが全部の原因のような気がしています。
このエラーの解決策は上記のサイトの方法以外に何かありますでしょうか?