LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 935|回复: 3

怎么才能让posgtgresql随系统启动?

[复制链接]
发表于 2004-1-12 15:33:34 | 显示全部楼层 |阅读模式
使用脚本来使数据库服务器随系统启动而自动启动。在PostgreSQL的源码包的contrib/start-scripts目录下面我们可以看到freebsd linux PostgreSQL.darwin StartupParameters.plist.darwin 4个文件,这些文件时用来作为系统启动脚本的,在这里我们用linux来做说明。
在这里的操作使用你编译PostgreSQL数据库时的用户身份。
cd $HOME/src/postgresql-7.4/contrib/start-scripts
su //切换到root用户
cp linux /etc/rc.d/init.d/postgres //把linux改名为postgres拷贝到系统的启动脚本的目录。
cd /etc/rc.d/init.d
使用你熟习的编辑器来编辑postgres启动脚本。
29 ## EDIT FROM HERE
30
31 # Installation prefix
32 prefix=/opt/pgsql
33
34 # Data directory
35 PGDATA="/var/lib/pgsql/data"
36
37 # Who to run pg_ctl as, should be "postgres".
38 PGUSER=postgres
39
40 # Where to keep a log file
41 PGLOG="$PGDATA/serverlog"
42
43 ## STOP EDITING HERE
在这里我们要修改prefix,PGDATA,PGUSER的值,prefix就是我们在configure源码时指定的prefix,PGDATA就是我们initdb命令-D参数指定的路径,PGUSER是我们用来启动数据库服务器的用户。
chmod +x postgres //使脚本具有可执行权限
如果希望在Linux启动的运行级别3的时候自动启动PostgreSQL数据库服务器,以root用户继续执行下面的命令。
cd /etc/rc.d/rc3.d/
ln -sf ../init.d/postgres S25postgres
当然S后面的数值可以根据你的需要来设定,但是这个数值一定要比PostgreSQL服务器依赖的服务器的数值小,比如你希望使用syslog,如果syslog服务是S12,那么postgres的值就要小于S12。
--------------------------------
我按照上面的这样做不行。。。。
发表于 2004-1-12 19:03:31 | 显示全部楼层
其实你说得我一句都没有看懂!感觉太复杂了!不过,如果实要和系统一起启动,觉得你看看/etc/rc.local会有一点用吧!?
发表于 2004-1-15 20:43:10 | 显示全部楼层

随系统启动的方法

/etc/rc.local中加一行
service postgresql start;

/etc/rc.d/init.d/postgresql start;
发表于 2004-1-17 09:31:40 | 显示全部楼层

回复: 随系统启动的方法

最初由 nettoobad 发表
/etc/rc.local中加一行
service postgresql start;

/etc/rc.d/init.d/postgresql start;

这个方法倚赖于具体的Linux系统,呵呵
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表