PostgreSQL 데이터베이스 설치

  1. 데이터베이스를 호스팅할 서버에 로그인하고 터미널 창을 엽니다.

  2. 최신 PostgreSQL 리포지터리를 다운로드합니다. 자세한 설치 지침은 여기 를 참조하십시오.

    sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

  3. PostgreSQL 버전 10 이상을 설치합니다. {version} 의 내용을 설치하려는 버전으로 바꿉니다.

    sudo yum install -y postgresql{version}-server

    예시:

    sudo yum install -y postgresql13-server

  4. 데이터베이스를 초기화합니다.

    sudo /usr/pgsql-{version}/bin/postgresql-{version}-setup initdb

  5. PostgreSQL을 부팅시작하도록 설정합니다.

    sudo systemctl enable postgresql-{version}

  6. PostgreSQL 서버를 시작합니다.

    sudo systemctl start postgresql-{version}

  7. 설치 중 생성된 postgres 리눅스 사용자 계정으로 전환합니다.

    sudo -iu postgres

  1. PostgreSQL 대화형 터미널을 시작합니다.

    psql

  2. Mattermost 데이터베이스를 만듭니다.

    postgres=# CREATE DATABASE mattermost WITH ENCODING 'UTF8' LC_COLLATE='en_US.UTF-8' LC_CTYPE='en_US.UTF-8' TEMPLATE=template0;

  3. Mattermost 사용자 ‘mmuser’를 만듭니다.

    postgres=# CREATE USER mmuser WITH PASSWORD 'mmuser-password';

Note

‘mmuser-password’보다 보안 수준이 높은 암호를 사용하십시오.

  1. 사용자에게 Mattermost 데이터베이스에 대한 액세스 권한을 부여합니다.

    postgres=# GRANT ALL PRIVILEGES ON DATABASE mattermost to mmuser;

  2. PostgreSQL 대화형 터미널을 종료합니다.

    postgres=# \q

  3. postgres 계정에서 로그아웃합니다.

    exit

  4. (선택 사항) 데이터베이스와 Mattermost 앱 서버가 다른 서버를 사용하는 경우 PostgreSQL이 모든 할당된 IP 주소에서 수신하도록 허용할 수 있습니다. 이를 위해 루트로 /var/lib/pgsql/{version}/data/postgresql.conf 파일을 텍스트 편집기로 엽니다. 방화벽을 사용하여 Mattermost 서버만 PostgreSQL 포트에 연결할 수 있도록 하는 것이 좋은 실천 사례입니다.

  1. 루트로 /var/lib/pgsql/{version}/data/postgresql.conf 파일을 텍스트 편집기로 엽니다.

  2. 다음 라인을 찾습니다:

    #listen_addresses = 'localhost'

  3. 주석 처리된 라인을 찾아 localhost* 로 변경합니다:

    listen_addresses = '*'

  4. 변경 사항이 적용되려면 PostgreSQL을 다시 시작합니다:

    sudo systemctl art postgresql-{version}

  1. pg_hba.conf 파일을 수정하여 Mattermost 서버가 데이터베이스와 통신할 수 있도록 합니다.

만약 Mattermost 서버와 데이터베이스가 같은 기기에 있는 경우 :

  1. 루트로 /var/lib/pgsql/{version}/data/pg_hba.conf 파일을 텍스트 편집기로 엽니다.

  2. 다음 라인을 찾습니다:

    local   all             all                        peer

    host    all             all         ::1/128        ident

  3. peeridenttrust 로 변경합니다:

local   all             all                        trust

host    all             all         ::1/128        trust

만약 Mattermost 서버와 데이터베이스가 다른 기기에 있는 경우 :

  1. 루트로 /var/lib/pgsql/{version}/data/pg_hba.conf 파일을 텍스트 편집기로 엽니다.

  2. 파일 끝에 아래 라인을 추가합니다. *{mattermost-server-IP}*는 Mattermost 서버를 포함하는 기기의 IP 주소입니다.

    host all all {mattermost-server-IP}/32 md5

  1. PostgreSQL을 다시로드합니다:

    sudo systemctl reload postgresql-{version}

  2. mmuser 사용자로 연결할 수 있는지 확인합니다.

  1. 만약 Mattermost 서버와 데이터베이스가 같은 기기에 있는 경우, 다음 명령을 사용합니다:

    psql --dbname=mattermost --username=mmuser --password

  2. Mattermost 서버가 다른 기기에 있는 경우, 해당 기기에 로그인한 후 다음 명령을 사용합니다:

    psql --host={postgres-server-IP} --dbname=mattermost --username=mmuser --password

Note

명령을 사용하려면 PostgreSQL 클라이언트 소프트웨어를 설치해야 할 수 있습니다.

PostgreSQL 대화형 터미널이 시작됩니다. PostgreSQL 대화형 터미널을 종료하려면 \q 를 입력하고 Enter 를 누릅니다.

데이터베이스가 설치되고 초기 설정이 완료되면 이제 Mattermost 서버를 설치할 수 있습니다.