質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

1472閲覧

sqlite3でダンプしたファイルを読み込んでくれない?

abbey_wakos

総合スコア17

SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2018/08/06 03:02

編集2018/08/06 07:04

https://qiita.com/nyamage/items/a3ccb27cdde69877c8da
こちらのサイトを参考に進めています。

sqliteのデータベースをpostgresのデータベースへデーターそのまま移行したいと考えています。
psql に接続まで成功したと思います。しかし、

###sqlite3でダンプしたファイルを読み込んでくれません
$ psql "dbname"
psql (9.2.24)
Type "help" for help.

dbname=# =#\i ./sqlite_dumpfile.sql
psql:./sqlite_dumpfile.sql:10: ERROR: syntax error at or near "SQLite"
LINE 1: SQLite version 3.7.17 2013-05-20 00:56:22
^

ダンプファイルの中身

イメージ説明

DB周りにはとても弱く、正直、解決策や勉強法があまり分かっておりません。
どなたか解決策やアドバイスがあればよろしくお願いします。
何とかこの壁を乗り越えたいです、、

..

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

ダンプから失敗してるように見えますね。

以下のサイトのようにダンプファイルにsql形式で出力されている必要があります。
https://www.dbonline.jp/sqlite/manage/index4.html

12時33分追記
14時44分追記
15時36分追記
16時35分追記
10時41分追記

ファイルに出力する場合以下のようにします。

sqlite3に接続

bash

1sqlite3 DBファイルパス

コマンドを実行

sql

1.tables 2.output ./dump.txt 3.dump

sqlite3から切断

sql

1.q

投稿2018/08/06 03:13

編集2018/08/07 01:42
namda

総合スコア705

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

abbey_wakos

2018/08/06 03:28

そうでしたか、、。 sqlite3 .dump > sqlite_dumpfile.sql と打ったのですが、このファイルを消して .dumpと打ってみるのがよろしいでしょうか
namda

2018/08/06 03:33

それでも良いですが、ファイルに出力するには .output 関数を使うと良いと思います。 コマンドは回答に反映します。
abbey_wakos

2018/08/06 03:48

ありがとうございます。 こうなってしましました、、。 $ .output ./dump.txt bash: .output: command not found
namda

2018/08/06 05:44

.dumpや.outputは sqlite3にログインして実行する必要があります。 回答に反映します
abbey_wakos

2018/08/06 06:23

ありがとうございます。そうでしたか、、 勉強になります。 dump.txtファイルが作成されたかと思います。 中身はまだ何も書かれていませんが、ここまでは成功でしょうか $ sqlite3 SQLite version 3.7.17 2013-05-20 00:56:22 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite> .output ./dump.txt sqlite> .q
abbey_wakos

2018/08/06 06:30

.output ./dump.txtの後、 .dumpですかね
namda

2018/08/06 06:36

DBファイルを指定する必要がありますね。 sqlite3 DBファイル です。回答に反映します。
namda

2018/08/07 01:41 編集

↓は誤りでした。.outputのあと.dumpが必要です。 また .outputと.dumpはファイル出力するか否かだけの違いなので両方使う必要はありません。
abbey_wakos

2018/08/06 07:03

ありがとうございます。初めての事ばかりで勉強になります。 このような感じでよろしいでしょうか? dump.txtの中身はまだ空白でございます。 一応スクリーンショット載せておきます。 $ sqlite3 development.sqlite3 SQLite version 3.7.17 2013-05-20 00:56:22 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite> .output ./dump.txt sqlite> .q
namda

2018/08/06 07:36 編集

development.sqlite3はファイル名だけですね。 フルパスで指定するかdevelopment.sqlite3が見える位置まで cd で移動する必要があります。 読み込まれた確認するためには ログインしたあと、 .tables を入力して作成したテーブルが表示されることを確認してください。
abbey_wakos

2018/08/06 10:18 編集

とても分かりやすいアドバイスありがとうございます。 cdでdbまで移動して、.tablesと打つとtableが確認できました。 このようになりました。大丈夫ですかね、、? $ cd Rails_lesson $ cd db $ ls development.sqlite3 migrate schema.rb seeds.rb $ sqlite3 development.sqlite3 SQLite version 3.7.17 2013-05-20 00:56:22 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite> .tables ar_internal_metadata posts teams players schema_migrations sqlite> .output ./dump.txt sqlite> .q dump.txtの中身はまだ空白です。
namda

2018/08/07 01:40

申し訳ないです。.outputの後、.dumpが必要でした。 回答修正して置きます。
abbey_wakos

2018/08/07 05:53

ありがとうございます。dumpファイルが作成せれました。 sqlite3でダンプしたファイルをpostgresに読み込みたいのですが ”dbbame”ファイルを作成 $createdb "dbname" 作成したデータベースに接続 $psql "dbname" psql (9.2.24) Type "help" for help. ダンプファイルをpostgresに読み込みたいのですが、コマンドが分かりません、、。 dbname=# =#\i ./dump.txt ./dump.txt: No such file or directory
namda

2018/08/07 06:14 編集

./dump.txt があるディレクトリまで cd で移動し psql -d 注入したいデータベース -U psqlのユーザネーム -W < ./dump.txt としてください。 これでうまくいかない場合QAがちょっと長くなっているので改めて sqlite3のdumpをpsqlに移したいと質問立て直していただけると助かります
abbey_wakos

2018/08/17 04:24 編集

ありがとうございます ここまできたので、後はパスワードの問題ですかね? 無理だったらもう一度質問立て直します、 $cd db $ ls development.sqlite3 dump.txt migrate schema.rb seeds.rb $psql -d dbname -U hogehoge -W < ./dump.txt Password for user hogehogei: psql: FATAL: Peer authentication failed for user "hogehoge"
namda

2018/08/07 06:55 編集

ユーザ名はxxxxxとかに修正して隠したほうがいいですよ。(偽名ならいいですが) 認証方法が違うみたいですね。 https://qa.atmarkit.co.jp/q/2604 PSQLに移すためには権限を持ったユーザ、データベース(スキーマ)が必要です。 それぞれまだ作成できて無いのであれば、それぞれpgsql ユーザ追加方法、pgsql データベス作成方法で調べて追加してみてください。 その上で上記dumpを読み込ませると良いでしょう。ユーザの追加DBの追加そのほか別なところでつまずいたら同様に質問してください。
abbey_wakos

2018/08/07 06:57

でしたね、、。ありがとうございmす泣 かしこまりました。ありがとうございます
abbey_wakos

2018/08/07 11:32

pg_hba.confディレクトリが見当たらないので、新しい質問を作らせていただきました、、。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問