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

Homebrewを介してMacOSXでPostgreSQLサーバーを起動する方法

    Homebrew経由でPostgreSQLをインストール

    ほとんどのOSXユーザーはHomebrewを知っていると思われます 、ただし、HomebrewはOS Xのパッケージマネージャーであり、アプリケーションとユーティリティの大規模なライブラリを簡単にインストールして実行できます。

    Homebrewの(短いですが)インストールプロセス全体については説明しませんが、HomebrewをインストールしてPostgreSQL管理に使用する場合は、公式ドキュメントのインストールコマンドを確認してください。 Homebrewがインストールされているかどうかわからない場合は、which brewを試してください ターミナルからコマンドを実行して確認します。

    Homebrewをインストールしたら、ターミナルで次のコマンドを発行してPostgreSQLをインストールできます。

    $ brew update
    $ brew doctor
    $ brew install postgres
    

    最初の2つのコマンドは、Homebrewを更新し、潜在的な問題を報告するために使用されます(必要な場合)。そして、もちろん、brew install postgres PostgreSQLをインストールするための1行のコマンドです。

    インストール中に出力に多くの有用な情報が表示されるはずです。その多くは、次のセクションで使用するためにコピーする必要があります。

    LaunchAgentとplistを使用して起動時にPostgreSQLを起動する

    ほとんどの場合、システムの起動時にPostgreSQLを起動したいと思うでしょう。そのため、これがあなたの望みであることをコンピュータに伝える必要があります。

    まず、LaunchAgents用のディレクトリを作成する必要があります 常駐する(ディレクトリがまだ存在しない場合)。 LaunchAgents OS Xでは、launchdによって使用される単純なスクリプトです。 これにより、システムは起動時にプログラムまたはコードを実行します。

    userを作成します -特定のLaunchAgents 必要に応じて、このコマンドを使用するディレクトリ:

    $ mkdir -p ~/Library/LaunchAgents
    

    次に、Postgresを実際にLaunchAgentsに実行できるようにするシンボリックリンクをスクリプトから作成する必要があります。 ディレクトリ。シンボリックリンクは、別のディレクトリで使用するファイルの新しいコピーを作成するのと似ていますが、リンクは「シンボリック」であるため、リンクは単なる転送アドレスです。そのシンボリックリンクの場所に対して行われた要求は、実際には「転送」されます。または実際の場所にリダイレクトされます ファイルは実際に存在します。

    plistへのリンク (プロパティリスト)Homebrewによって生成されたファイルで、その新しいシンボリックリンクをLaunchAgentsに配置します このコマンドで:

    $ ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents
    

    注:コマンドが正しいことを再確認してください:Homebrewが最初にPostgresをインストールしたときに、上記のインストール出力の一部である必要があります。

    最後に、新しいシンボリックリンクのLaunchAgentを読み込みます launchctl loadを使用したファイル コマンド。具体的には、このスクリプトを実行し、コンピューターの起動時にPostgresを開始するようにコンピューターに通知します。繰り返しになりますが、独自のインストールに入力する正確なコマンドは、HomebrewのPostgresインストール中の出力になりますが、次のようになります。

    $ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
    
    PostgreSQLを手動で起動する

    再起動せずにPostgresを手動で起動するには、インストール中に出力されたコマンドを次のように使用できるはずです。

    $ postgres -D /usr/local/var/postgres
    

    これにより、daemonでPostgresを起動しようとします モード。これは、端末を引き継ぐことなくバックグラウンドプロセスとして実行されることを意味します。

    自作なしでPostgreSQLを開始/停止

    Postgres用のHomebrewを持っていない(または使用したくない)が、Postgresがすでにインストールされている場合は、pg_ctlを使用して手動で起動することもできます。 、これはPostgres自体が提供する起動ユーティリティです。

    これにより、Postgresが起動します(デフォルトのディレクトリを想定):

    $ pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
    

    そしてこれはPostgresを停止します:

    pg_ctl -D /usr/local/var/postgres stop -s -m fast
    

    スタートアップのトラブルシューティング:initdbを実行しましたか ?

    場合によっては、Postgresの実行に問題がある場合は、initdbを実行したことを確認してください。 コマンドを1回実行すると、Postgresは新しいインストールのためにデータベースクラスターを初期化し、デフォルトのpostgresに接続できるようになります。 ユーザー。


    1. ODP.NETのデフォルトでOracleCommand.BindByNameを強制的にtrueにする方法はありますか?

    2. SQLServerの文字列へのvarbinary

    3. MySQLで複合主キーを作成する方法

    4. リレーショナルデータベースと非リレーショナルデータベース:違いは何ですか?