Chinaunix首页 | 论坛 | 博客
  • 博客访问: 197006
  • 博文数量: 62
  • 博客积分: 725
  • 博客等级: 上士
  • 技术积分: 746
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-09 17:07
个人简介

exyz

文章分类

全部博文(62)

分类: Mysql/postgreSQL

2014-03-03 08:53:57

注释:本文只对我所设定的环境有效,其它环境一般无效。。。。 O(∩_∩)O~
内容结构:
~~~~~PostgreSQL rpm安装文档
~~~~~PostgreSQL 源码安装文档
~~~~~PostgreSQL 简略使用文档
~~~~~更改 postgreSQL 数据存放目录


PostgreSQL 安装文档
1■ 安装环境
    OS:CentOS 6.5 x64 
    磁盘分区情况:
    /boot 200M
    /root 6G
    swap 4G
    /data    Others ( postpresql  数据库目录)
 
2■ 配置yum源
#vi /etc/yum.repos.d/CentOS-Base.repo
在 [base] [update] 区域加上下面一行: 
    exclude=postgresql*

3■ 安装 PGDG RPM 文件
文件可以在   找到与系统版本一致的包.
使用 PostgreSQL 安装在 CentOS 6 64位系统上,使用:
#curl -O 9.3/redhat/rhel-6-x86_64/pgdg-centos93-9.3-1.noarch.rpm
#rpm -ivh pgdg-centos93-9.3-1.noarch.rpm

4■ 安装 PostgreSQL 
yum显示安装需要的包,并使用yum 安装
#yum list postgres*
#yum install postgresql93-server

5■ 安装完成之后,需要初始化和配置数据库
    数据目录   /var/lib/pgsql/9.3/data
    初始化数据  #service postgresql-9.3 initdb
    如果上面命令无效,可以使用:#/usr/pgsql-9.3/bin/postgresql93-setup initdb

6■ 启动postgreSQL
    #chkconfig postgresql-9.3 on
    #service postgresql-9.3 start/stop/restart/reload

7■ 移除postgreSQL
     #yum erase postgresql93*


PostgreSQL 源码安装文档

①安装前的环境准备

为RedHat 平台选择必要的开发包:
yum install -y yum-fastestmirror
yum install -y bison-devel
yum install -y readline-devel
yum install -y zlib-devel
yum install -y openssl-devel wget
yum groupinstall -y 'Development Tools'

mkdir -p /usr/local/src
cd /usr/local/src
wget -O /usr/local/src/
tar zxvf postgresql-9.3.2.tar.gz
cd postgresql-9.3.2
./configure –with-openssl --enable-integer-datetimes
make 
make install
cd /usr/local/src/postgresql-9.3.2/contrib/ #进入实体目录,选择安装所有实体
make all
make install


②启动准备:
cp /usr/local/src/postgresql-9.3.2/contrib/start-scripts/linux /etc/init.d/postgresql
chmod 775 /etc/init.d/postgresql
chkconfig --add /etc/init.d/postgresql
adduser postgres -d /usr/local/pgsql #为pgsql创建用户,指定目录,一般在编译时候已创建,所以可能会提示已存在该用户

echo 'PATH=$PATH:/usr/local/pgsql/bin; export PATH' > /etc/profile.d/postgresql.sh
echo 'MANPATH=$MANPATH:/usr/local/pgsql/man; export MANPATH >> /etc/profile.d/pgmanual.sh

增加到binary和man页面的路径:
chmod 775 /etc/profile.d/postgresql.sh
chmod 775 /etc/profile.d/pgmanual.sh


创建登录目录:
mkdir -p /var/log/pgsql
chown -R postgres:postgres /var/log/pgsql/

创建postgreSQL数据库群:
mkdir /usr/local/pgsql/data
chown -R postgres:postgres /usr/local/pgsql/data

postgreSQL不会使用root角色去运行数据库的,所以需要使用一个专有的管理账户 postgres ,接下来就是初始化数据库群了:
su – postgres
/usr/local/pgsql/bin/initdb -U postgres -E=UTF8 /usr/local/pgsql/data 


③修改配置脚本:
vi /usr/local/pgsql/data/postgresql.conf 
————————————————————————————————————————————————
listen_addresses = '*'
port = 5432
log_destination = 'stderr'
logging_collector = on
log_directory = '/var/log/pgsql/'
log_filename = 'postgresql-%Y-%m-%d'
log_line_prefix = ' %t %d %u '
————————————————————————————————————————————————

vi /usr/local/pgsql/data/pg_hba.conf 
————————————————————————————————————————————————
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 192.168.0.0/24 md5 #建议加上此行,IP地址自拟,md5表示通过此方式认证;不会加?那就忽略此行
# IPv6 local connections:
host all all ::1/128 trust
————————————————————————————————————————————————

④启动postgreSQL:
/etc/init.d/postgresql start

切换用户,进入数据库:
su - postgres
psql -U postgres

原文链接:



PostgreSQL 简略使用文档
 # su - postgres #切换至pgs账户
 $ psql #进入pgsql
 
 =>CREATE SCHEMA test;
 =>CREATE USER celebi PASSWORD '123456';
 =>GRANT ALL ON SCHEMA test TO celebi; #授权(如建表)给新用户
 =>GRANT ALL ON ALL TABLES IN SCHEMA test TO celebi; #授表的权(如插入数据)给新用户
 =>\q #退出连接                 
 
 成为一个标准用户:默认权限级别是 'ident' ,意思是在Linux系统中的用户 celebi 才能够作为postgres 用户 celebi连接到数据库。
 
 #useradd celebi
 #su - celebi
 $ psql -d postgres #-d 为指定数据库名称
=>CREATE TABLE test.test (coltest varchar(20));
=>insert into test.test (coltest) values ('It works!');
=>SELECT * from test.test;
=>DROP TABLE test.test;

原文链接
更改 postgreSQL 数据存放目录
①#service postgresql stop    (停止数据服务器)

②#vi /etc/rc.d/init.d/postgresql-9.3     (编辑数据存放目录配置文件)
更改如下数据,设定数据和日志存放目录:
    PGDATA=/data/pgdata
    PGLOG=/data/pgdata/pgstartup.log
#mkdir /data/pgdata      (创建数据存放目录)
#chown postgres:postgres /data/pgdata    (更改存放数据目录权限)

③#su - postgres (切换至DB管理账户)
#service postgresql-9.3 initdb (初始化数据)
    【若提示 "/data/pgdata/pg_log" 已存在,可删除该目录再重新初始化数据 】

④#service postgresql-9.3 start (启动服务)
#ps aux | grep post (查看状态)

更改账户密码 :
#su - postgres
#psql -U username
#alter user postgres with password 'postgres'
\l    查看数据库
\t    查看表

阅读(2906) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~