ubantu 安装和卸载postgresql

安装postgresql

首先查看pg服务是否存在,如果已存在,需要先卸载再安装(需要卸载请参考卸载pg的文段),执行以下命令

sudo service postgresql status

执行以下命令安装

sudo apt install postgresql postgresql-contrib
###安装postgresql 以及 postgresql contrib(额外特性)

等待安装完成,执行下面命令查看pg服务是否正常

sudo service postgresql statussudo service postgresql status
##查看你pg版本执行,psql --version

pg服务正常,使用apt安装这里有个坑,需要修改pg的配置文件,避免后期重启后pg没有正确运行在其配置的端口上,会以下错误

connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?,

修改/etc/postgresql/12/main/postgresql.conf

sudo vi /etc/postgresql/<版本>/main/postgresql.conf 
###默认是unix_socket_directories = '/var/run/postgresql'
#######将unix_socket_directories的值改成tmp,unix_socket_directories = '/tmp' 

接着停止pg再启动

sudo service postgresql stop
sudo service postgresql start
##设置开机自启动
sudo systemctl enable postgresql

创建超级用户root

首先登陆pg

sudo -u postgres psql

再创建超级用户

CREATE ROLE root superuser PASSWORD '123456789' login;

如果已存在则修改密码

ALTER USER root WITH PASSWORD '123456789';

开启远程访问

修改pg_hba.conf

sudo vi /etc/postgresql/<版本>/main/pg_hba.conf
###将下面内容加入
# IPv4 local connections:
host    all             all             0.0.0.0/0               md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
host    all             all             0.0.0.0/0               md5

修改postgresql.conf

sudo vi /etc/postgresql/<版本>/main/postgresql.conf
###找到listen_addresses,把前面的注释去掉,并修改成listen_addresses = '*'

重启pg服务

sudo service postgresql stop
sudo service postgresql start

卸载postgresql

首先停止pg服务

service postgresql stop
##如果和开机启动相关,需要删除开机启动
sudo systemctl stop postgresql
sudo systemctl disable postgresql

删除对应的配置文件,如果需要备份数据文件请卸载前先到数据库查看数据保存的路径,复制整个文件夹或者使用pg_dump、pg_dumpall进行备份,详情参考官网

使用apt卸载

sudo apt-get purge 'postgresql-*'
sudo apt-get autoremove 'postgresql-*'
sudo rm -r /etc/postgresql/
sudo rm -r /etc/postgresql-common/
sudo rm -r /var/lib/postgresql/
sudo userdel -r postgres
sudo groupdel postgres

此卸载命令有风险,会把所有关联到该数据库的所有服务都卸载,慎用,如果没有把握的情况下,请单独卸载postgresql服务,将sudo apt-get purge 'postgresql-*'和sudo apt-get autoremove 'postgresql-*'替换成sudo apt-get --purge remove postgresql和sudo apt-get autoremove 'postgresql',但是单独卸载会出现卸载不干净的情况,权衡选择。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值