$ ./pg_ctl start
报错如下:
通过报错信息我们得知我们没有在pg这个用户中配置环境变量(但实际上我已经配置好了,但是重启后服务器没加载该配置导致该报错)。
$ vi ~/.bash_profile
按照实际路径在用户配置文件中配置添加PGDARTA变量。默认该路径在数据库软件安装路径下的data目录(这里我的pg数据库安装在/data/pg目录下)。
重新加载配置。
$ source ~/.bash_profile
重启后依旧报错如下(这里是由于我安装了多个postgresql,另外一个pgsql随系统启动占用了端口导致启动失败):
查看端口占用情况,可以看到端口被一个postgres服务占用了:
$ netstat -anp |grep 5432
杀掉该进程:
$ kill -9 3042
再次启动postgres服务。还是报错,怀疑是因为在某个目录下缺少了个软连接。
$ ln -s /tmp/.s.PGSQL.5432 /var/run/postgresql/.s.PGSQL.5432
依旧报错,输入以下命令问题解决:
$ ps -eaf|grep -i postgres
输入psql命令验证: