私たちはしばらくの間、postgresql 8.4を実行してきました。他のデータベースと同様に、私たちは徐々にスペースの限界に達しています。私は別の8ギガバイトEBSドライブを追加し、私たちのインスタンスに装着され、それは手動で私が間違っている場合Amazon EC2上でUbuntuのpostgresqlデータを別のディレクトリに移動するにはどうしたらいいですか?
が私を修正して作成されたI /ファイル
/ファイル内というディレクトリ上で適切に動作するように構成されたが、私すべてのpostgresqlデータが/var/lib/postgresql/8.4/mainに格納されていると考えてください。
私はデータベースをバックアップしましたが、sudo /etc/init.d/postgresql stopを実行しました。これにより、postgresqlサーバーが停止します。 /var/lib/postgresql/8.4/mainの内容を/ filesディレクトリにコピー&ペーストしようとしましたが、それは巨大なMESSでした!ファイルのアクセス許可のためです。コピーして貼り付けることができるように、そのフォルダの内容をchmodに入れなければなりませんでした。ルートパーミッションのため、一部のファイルが完全にコピーされませんでした。私は
data_directory = '/files/postgresql/main'
ファイルのディレクトリを指すようにpostgresql.conf内data_directoryは、パラメータを変更し、私はsudoが再起動/etc/init.d/postgresql走ったとサーバが起動に失敗しました。おそらく許可の問題が原因です。 Amazon EC2では、デフォルトでubuntuとしてサービスにアクセスできます。端末の中からルートにアクセスできるのは、すべてをもっと複雑にするだけです。
これを行うには、よりクリーンで効率的なステップがありますか?
こんにちは、あなたは「古いデーターダールを脇に移動する」という意味を説明できますか?つまり、削除するか、バックアップフォルダにコピーするだけですか?どのデータディレクトリを意味しますか? 'show data_directory;'によって返されるフォルダ全体? –
名前を変更して、何も失うことがない場合は、結局重要であることが判明しました。 –
symlinlkのアイデアは悪くはありませんが、あなたが古いdatadirの場所を保持する必要があるので完璧ではありません。 – yglodt