Linux pg数据库设置开机自启动
今天上班学习摸鱼,专门研究了一下用的数据库开机自启的方法。我们现有数据库使用的是postgres数据库,版本为9.6.10,当年项目是外包的,也不知道他们具体是怎么设置开机自启的,反正我们后来用的都没有设置,看了init.d文件夹下面也没有pg数据库相关的内容,所以无聊就专门搞一个(涉及到Linux命名都放到最后了)。
1、找到linux文件
上面这个是我其他服务器b上的linux文件位置,我主要安装的服务器a上面没有这个目录,全局搜索也找不到这个文件,所以就用其他的代替了(后来才想起来a上的数据库是别人搞得,反正连安装包都没有找到,要用命令找的话看我最后附带的命令)
2、复制文件到init.d目录下:cp linux /etc/init.d/postgresqld
专门加d是因为之前在写redis开机自启的时候想着+d可以让我自己知道这个文件是开机自启的
3、修改postgresqld文件
prefix=/usr/pgsql-9.5 --pgsql主目录
PGDATA="/var/lib/pgsql/9.5/data" --pg data目录
PGUSER=postgres --pg用户,(切记不能用root,root用户无法启动pg数据库,这个我没试过,不清楚)
PGLOG="$PGDATA/logs/pg_server.log" --pg日志文件
主要改上面这四个,其他的基本上可以不用改
4、修改文件的可执行权限:chmod 755 /etc/init.d/postgresqld
这个改好之后可以先测试一下这个文件是否修改成功,关闭或者开启数据库试一下就好了
postgresqld命令:./postgresqld stop|start
如果关闭|开启成功,说明文件修改成功,可以进行下一步了,不行的话根据具体问题再修改,反正我是一次就OK了的
5、通过chkconfig命令将该脚本注册为开机启动:chkconfig postgresqld on
再使用 chkconfig --list 命令查看是否注册成功
6、最后通过 reboot 重启后执行 ps -ef|grep postgresql
可以看到pg已经成功启动
上面涉及到的Linux命令:
1、查询pg数据库版本:在bin目录下执行 ./postgres --version
2
2、当时还专门查询了一下是否有安装pgsql数据库:rpm -qa|grep postgres
这个感觉有没有都一个样,因为其他服务器执行这个命令查出来没有也能打开数据库
3、全局查找指定文件:find / -name 'postgres*'
先找到对应的目录路径,就是红框框者的,然后进入之后查看是否存在linux文件
4、最开始想的是直接把linux文件的内容全部都复制过来的,所以用vim命令打开linux文件之后,再全部复制下来的
全选(高亮显示):按esc后,然后ggvG或者ggVG 全部复制:按esc后,然后ggyG 全部删除:按esc后,然后dG 解析: gg:是让光标移到首行,在vim才有效,vi中无效 v : 是进入Visual(可视)模式 G :光标移到最后一行 选中内容以后就可以其他的操作了,比如: d 删除选中内容 y 复制选中内容到0号寄存器 "+y 复制选中内容到+寄存器,也就是系统的剪贴板,供其他程序用
但是我就只成功了一次,后来再怎么用都不行了,一气之下直接就整个文件都搬过来了