先对 postgresql 进行初始化,即运行 initdb 指令,在运行该指令前先建立数据库存储目录:/var/db。建好该目录后还得给后边运行 initdb 指令的用户指定权限(postgresql 不允许 root 用户执行相关指令):
chown uu /var/db执行 initdb :
/usr/lib/postgresql/7.4/bin/initdb -E UTF-8 -D /var/db初始化操作成功后,目前有个系统配置方面的 BUG :此时 postgresql 重启后应该读取的配置文件全在 /var/db 下,但实际上并不是。此时 postgresql 读取的配置文件位于 /var/lib/postgresql/7.4/main 下,执行指令 ls -l 可以看到有三个 p 打头的链接文件链的是 /etc/postgresql/7.4/main/ 下的同名文件。删除此三个链接文件,重新建立链接文件到 /var/db 目录下的配置文件,比如:
ln -s /var/db/postgresql.conf postgresql.conf此后所作的所有有关配置文件下的更改都应是 /var/db 目录下的文件。重启 postgresql :
/usr/lib/postgresql/7.4/bin/postmaster -D /var/dbpostgresql 提供一个默认超级用户(建立在操作系统级)postgres,开始只能通过该用户创建其他用户、创建数据库。这个用户的口令在系统配置文件中的定义是“*”,就是说你输什么都不行,必须切换到 root 用户再 su postgres 来使用或更改其口令。建立一个数据库用户 dbuser :
su postgres -c createuser有了第一个用户,接下来就可以建数据库了:
postgres@unx$ createdb -O uu -e wooo 'database wooo'更改用户口令可以在 psql 里做:
ALTER USER *username* WITH PASSWORD '*password*';查看 postgresql 版本:
psql --version删除数据库:
postgres@unx$ dropdb -U uu -i wooo
没有评论:
发表评论