sql >> データベース >  >> RDS >> PostgreSQL

AmazonLinuxでpostgresSQL9.6サーバーを起動すると、認識されないサービスが返されます

    同じ問題、または同様の問題がある。ソースからpgsqlをインストールしたのかもしれませんが、覚えていません。独自のサービス開始ファイルを作成できます。どのように?確認してみましょう!>> RTFM <<私たちがすでに知っていることから始めます:

    man service
    

    これはchkconfig(8)につながるので、

    man chkconfig
    

    そしてそれは私たちにオプションを与えます

    chkconfig --add ${svcname}
    

    選択した名前で新しいサービスを追加します!

    しかし、その前に、実際にそこに何があるかを確認したい場合があります。

    service --status-all
    

    すべての既知のサービスとその実行ステータスのリストを取得します。リストに「postmaster」が見つかりました。ご存知かもしれませんが、接続先のPostgreSQLマスターサーバーは「postmaster」と呼ばれていました。それでも、試してみると

    service postmaster status
    

    また、そのようなサービスを知らないことも教えてくれます。 OK、忘れてください-今のところ-私たち自身のものを作ることに移りましょう!しかし、私はまだ実行レベル3(通常のサーバー実行レベル)に何があるかを覗き見したいと思います。だから私は行きます

    ls -1 /etc/rc.d/rc3.d |fgrep post
    

    そこに私は見つけます:「K36postgresql95」!したがって、サービス名は「postgresql95」にする必要があります。それを試してみてください:

    service postgresql95 status
    

    「ポストマスターが停止しました」と表示されます。紛らわしいことに、service --status-allでサービスが報告する名前と、個別に問い合わせるときの名前は、serviceコマンドで実際にアドレス指定するために使用される名前とは異なります。知っておくと良い。 /etc/rc.dで関心のある名前を検索するのは簡単です。

    service postgresql95 start
    

    これでサービスが開始されます。そして、

    で確認してください
    psql -U ${pguser} ${pgdb}
    

    そして私はそれが機能していると思います。だから今私がする必要があるのは、システムの起動時にそのサービスを有効にして自動起動することだけです

    chkconfig --levels 3 postgresql95 on
    

    それはうまくいきますね

    PS:バージョン9.5を実行しても問題ありません



    1. どのFOREIGNKEY制約がSQLServerのテーブルを参照しているかを確認するにはどうすればよいですか?

    2. SSISExcelインポートの強制が正しくない列タイプ

    3. Cos()がPostgreSQLでどのように機能するか

    4. SQL Server:バッチステートメント(つまり、GOを使用)は何に適していますか?