Linux安装postgresql-配置远程连接-开机自启动

安装:

1. 下载软件包

pgsql有很多类型的包,对于不同linux发行版都有对应的编译好的包,安装很方便,另外如果对于通用的linux平台可以编译源码安装或者安装官方编译好的二进制包,源码包的安装仅仅比二进制安装多出一个编译步骤,其余的都一样,所以这里使用安装方式是安装编译好的二进制包
官网下载链接:https://www.enterprisedb.com/download-postgresql-binaries
根据机器的位数下载对应的包。

2. 安装并初始化

解压数据库并放到指定目录:

tar -xvzf postgresql-10.1-1-linux-x64-binaries.tar.gz
# 解压出来之后目录为pgsql
mv pgsql/ /monchickey/

现在pgsql的安装目录就是/monchickey/pgsql

创建pgsql用户并设置密码:

useradd postgres
passwd postgres
# 两次输入密码并确认

注意:这里设置密码是linux用户postgres的登录密码,不是pgsql服务器的密码

创建pgsql数据目录: mkdir /monchickey/pgsql_data

给postgres用户授权目录访问权限: chown postgres /monchickey/pgsql_data/

然后切换到postgres用户来操作数据库,pgsql数据库就以postgres为默认用户,执行:su - postgres切换

切换之后建议修改~/.bash_profile将pgsql的bin目录加至环境变量中,方便直接使用pgsql相关命令,下面初始化数据库:

/monchickey/pgsql/bin/initdb -D /monchickey/pgsql_data/

等待执行完毕,没什么问题就初始化成功了,提示如下:
  在这里插入图片描述
如图根据提示可以启动数据库:/monchickey/pgsql/bin/pg_ctl -D /monchickey/pgsql_data/ -l logfile start这里-l指定日志文件位置,这里直接输出在家目录下的logfile中,这个可以自己指定,这里-D指定数据目录,默认如果不加数据目录直接报错找不到,可以刚才说的环境变量配置文件中~/.bash_profile加入一行: export PGDATA=/monchickey/pgsql_dataPATH=$PATH:$PGDATA然后source进去即可,这样pgsql会自动去找PGDATA环境变量值,找不到才会报错

启动之后此时执行: ps -ef | grep postgres 就可以看到相关进程如下:
  在这里插入图片描述
pgsql默认的端口号为5432,通过netstat命令或者lsof命令都可以看到监听情况:
在这里插入图片描述
现在可以看到pgsql默认监听的是localhost或127.0.0.1,目前只能本机访问,如果远程访问就连接不上了,具体的配置文件是data目录下的postgresql.conf,可以通过修改这个配置文件来调整各个参数,比如:listen_addresses可以修改绑定的地址,默认是localhost,port可以修改监听的端口号,默认是5432,max_connections可以修改最大客户端连接数量,默认是100等等,这里就不再详细说了

停止postgresql的命令为:/monchickey/pgsql/bin/pg_ctl -D /monchickey/pgsql_data/ stop

3. 命令行界面简单操作

pgsql和mysql一样可以通过交互式提示符连接操作,连接方式如下:

./bin/psql -h 127.0.0.1 -d postgres -U postgres -p 5432

其中-h参数指定服务器地址,默认为127.0.0.1,默认不指定即可,-d指定连接之后选中的数据库,默认也是postgres,-U指定用户,默认是当前用户,-p 指定端口号,默认是"5432",其它更多的参数选项可以执行: ./bin/psql --help 查看

登录进去默认界面如下所示:
在这里插入图片描述

命令提示符前面的就是当前的数据库,使用 \l 查看当前的数据库列表
  在这里插入图片描述
默认postgres,template0和1这3个库是不允许操作的,创建新的数据库执行: CREATE DATABASE test WITH OWNER=postgres ENCODING=‘UTF-8’; 这样就创建好了数据库test,然后可以执行命令 \c test 切换当前数据库为test,然后执行 \d 可以查看当前数据库下的所有表:
在这里插入图片描述
最后可以执行 \q 退出交互式界面

远程连接:

在此之前设置pgsql默认用户posgres的密码:
./bin/psql -h 127.0.0.1 -d postgres -U postgres -p 5432

进入命令行操作:

ALTER USER postgres with password '123456';

(将默认的postgres用户密码设置为123456,注意语句后面一定要加分号),

\q   退出psql客户端
1 修改pg_hba.conf

添加允许访问IP

host all all 0.0.0.0/0 md5
2 修改监听配置

修改 postgresql.conf文件,允许所有的链接

#listen_addresses = 'localhost' # what IP address(es) to listen on;
 listen_addresses = '*'         # what IP address(es) to listen on;
重启数据库,客户端连接即可.

navicat连接:
在这里插入图片描述
密码填123456即可!

开机自启:

https://jingyan.baidu.com/article/c275f6ba9a59f4a33c75676a.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

总要冲动一次

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值