centos7installan instala postgresql9.6, resolve o agrupamento "insensível ao acento" e estende a função pgcrypto

Etapa 1: Adicionar fonte RPM (obter o endereço de download no site oficial)

Endereço do site oficial do PostgreSQL: https://yum.postgresql.org/

yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm

PS: Se houver um erro no processo de instalação, ou o prompt foi carregado, mas não há pacote de dependência relacionado, você pode limpar o cache do yum primeiro. Limpar o
cache do yum:
Os parâmetros do yum clean incluem cabeçalhos, pacotes, metadados, dbcache, plugins, expire-cache, rpmdb, tudo

yum clean headers  #清理/var/cache/yum的headers清理
yum clean packages #清理/var/cache/yum下的软件包
yum clean metadata

Etapa 2: instalar o servidor PostgreSQL 9.6 e as extensões de terceiros relacionadas

Instruções de instalação relacionadas:
servidor núcleo de banco de dados postgresql96-server
extensão adicional de terceiros postgresql96-contrib
postgresql96-devel arquivos de cabeçalho e bibliotecas de desenvolvimento de linguagem C

Etapa 3: verifique se a instalação foi bem-sucedida

rpm -aq| grep postgres

Etapa 4: crie um local de caminho de armazenamento de banco de dados

Para facilitar o gerenciamento unificado, um caminho unificado pode ser estabelecido para o armazenamento

mkdir -p /data/pg/data #存放数据库的文件夹
chown -R postgres:postgres /data/pg #为新创建的pg文件夹分配数据库服务的操作权限
chown -R postgres:postgres /data/pg/data #为存放数据库的文件夹分配权限
chmod 750 /data/pg/data

Etapa 5: definir variáveis ​​de ambiente

Edite o arquivo / etc / profile,

vim /etc/profile

Adicione a seguinte configuração de informações no final:

PGDATA=/data/pg/data
PGHOST=127.0.0.1
PGDATABASE=postgres
PGUSER=postgres
PGPORT=5432
PATH=/usr/pgsql-9.6/bin:$PATH
export PATH
export PGDATA PGHOST PGDATABASE PGUSER PGPORT
export TMOUT=1000

Então, para que as alterações tenham efeito

source /etc/profile

Verifique se ele foi adicionado com sucesso:

export 

Definir variáveis ​​de ambiente (outros métodos):
export PATH = / usr / pgsql-9.6 / bin: $ PATH
export LD_LIBRARY_PATH = / usr / pgsql-9.6 / lib
export PGDATA = / data / pg / dat

Etapa 6: inicializar o banco de dados

Digite o usuário postgres:

su postgres #切换到postgres用户

initdb -D /data/pg/data #初始化数据库
#或
/usr/pgsql-9.6/bin/postgresql96-setup initdb -D /data/pg/data

exit #退出当前postgres用户

Etapa 7: Visualize a instalação relacionada

cd /data/pg/data

Etapa 8: configurar acessível remotamente

Modifique o arquivo 1: /data/pg/data/pg_hba.conf, adicione o método de acesso por senha remota

vim /data/pg/data/pg_hba.conf

Encontre # conexões locais IPv4: adicione uma linha abaixo dela

host    all             all             0.0.0.0/0         md5

Arquivo de modificação 2: arquivo de configuração /data/pg/data/postgresql.conf
encontrado

#listen_addresses = 'localhost'

, Exclua o # anterior, o parâmetro localhost significa que apenas o servidor atual pode ser conectado ao banco de dados, se você deseja especificar o endereço para poder acessar, você pode inserir o endereço ip, separar vários endereços com vírgulas, se você abrir todos os endereços para acessar

listen_addresses = '*'

virar para cima

#port = 5432

Exclua o # na frente, aqui você pode especificar a porta para acessar o banco de dados

Etapa 8: modifique a configuração e prepare-se antes de inicializar

Modifique o arquivo: /usr/lib/systemd/system/postgresql-9.6.service

nano /usr/lib/systemd/system/postgresql-9.6.service
#把aLocation of database direcotry配置节里面没有指定正确的PGDATA。所以我们需要将下面的PGDATA设置成正确值
Environment=PGDATA=/data/pg/data/

PS: Após modificar as informações remotas:
reinicie o serviço postgresql-9.6 para tornar o arquivo de configuração efetivo.
Serviço postgresql-9.6 restart

Etapa 9: configurar o processamento de inicialização

systemctl enable postgresql-9.6.service

Etapa 10: iniciar o banco de dados postgresql

su postgres -c "/usr/pgsql-9.6/bin/pg_ctl start -D /data/pg/data"

ps -ef|grep postgres #查看相关进程

Etapa 11 modificar a senha:

Faça login como usuário postgres:

su postgres

Conecte-se ao banco de dados:

psql -U postgres

Modifique a senha do usuário postgres:

Alter user postgres with password '123456';

Saia da conexão do banco de dados

\q

Reinicie o serviço

bash-4.2$ pg_ctl restart  
could not change directory to "/root": Permission denied
waiting for server to shut down.... done
server stopped
server starting
bash-4.2$ < 2018-03-08 16:44:37.861 CST > LOG:  redirecting log output to logging collector process
< 2018-03-08 16:44:37.861 CST > HINT:  Future log output will appear in directory "pg_log".

Etapa 12 de processamento do firewall (fechar ou adicionar porta):

PS: geralmente não é recomendado fechar o firewall diretamente no ambiente de produção

 systemctl stop firewalld #关闭防火墙
systemctl enable firewalld #开机启用防火墙
systemctl start firewalld #开启防火墙
firewall-cmd --add-service=postgresql --permanent   #开放postgresql服务
firewall-cmd --zone=public --add-port=5432/tcp --permanent #或者可以直接添加端口
firewall-cmd --reload # 重载防火墙
firewall-cmd --list-ports #查看占用端口

Etapa 13: use o Navicat Premium para se conectar remotamente:

PS: Por causa do problema da versão do banco de dados PG,
pode ocorrer um erro . A mensagem de erro é a seguinte:
PostgreSQL: coluna "rolcatupdate" não existe erro
no Navicat premium causará um erro quando a conexão for bem sucedida, o funcionamento da tabela ou o estabelecimento do banco de dados aparecerá

Tente encontrar o problema:

o motivo:

A solução final: alterar a versão do Navicat Premium para Navicat Premium12

suplemento:

systemctl enable postgresql-9.5.service
su postgres
bash-4.2 $ ps -ef | grep postgres
bash-4.2 $ kill -9 5439 #Primeiro parar todos os processos
bash-4.2 $ ps -ef | grep postgres # Nenhum processo em execução
bash- 4.2 $ systemctl enable postgresql-9.6.service
e digite a senha:
bash-4.2 $ service postgresql-9.6 restart
bash-4.2 $ ps -ef | grep postgres
# foi executado novamente bash-4.2 $ systemctl status postgresql-9.6.service # Sim Verde aparece, indicando que começou com sucesso!
bash-4.2 $ systemctl stop postgresql-9.6.service #First stop
bash-4.2 $ systemctl start postgresql-9.6.service
PS: Depois de modificar as informações remotas:
reinicie o serviço postgresql-9.6 para tornar o arquivo de configuração efetivo
serviço postgresql-9.6 restart

PS : O
serviço de reinicialização no ECS Linux CentOS 7 não é mais operado por serviço, mas por systemctl.

Visualizar: systemctl status sshd.service

Iniciar: systemctl start sshd.service

Reiniciar: systemctl restart sshd.service

自 启 : systemctl enable sshd.service

systemctl restart postgresql-9.6.service

Desinstalar PostgreSQL

yum erase postgresql96

PS: Resolva o problema de agrupamento "insensível ao acento" e o problema de estender a função pgcrypto, insira no terminal do banco de dados

CRIAR EXTENSÃO sem acento;

CRIAR EXTENSÃO "pgcrypto"; 

 

 

 

 

 

 

 

Acho que você gosta

Origin blog.csdn.net/wjg1314521/article/details/103523736
Recomendado
Clasificación