介绍
PostgreSQL是加州大学伯克利分校计算机系开发的对象关系型数据库管理系统,目前拥有活跃的开源社区贡献,最近排名也不断前进,pgsql中其实有很多有点和设计理念都要比mysql更好一些,比如稳定性比较强;高并发读写情况下性能依然较好;
参考1
参考2
手动安装postgresql
cd /usr/local/src
wget http://get.enterprisedb.com/postgresql/postgresql-10.9-1-linux-x64-binaries.tar.gz
tar -xvzf postgresql-10.9-1-linux-x64-binaries.tar.gz
mv pgsql /usr/local/pgsql
#创建pgsql用户并设置密码:
useradd postgres
groupadd postgres
useradd -g postgres postgres
passwd postgres
mkdir /usr/local/pgsql/data
chown postgres /usr/local/pgsql/data
- 修改环境变量
vi ~/.bash_profile
将pgsql的bin目录加至环境变量中
#pgsql环境变量
PGSQL_HOME=/usr/local/pgsql
export PATH=$PATH:$PGSQL_HOME/bin
source ~/.bash_profile
- 初始化数据库:
su - postgres
initdb -D /usr/local/pgsql/data - 启动server
postgres -D /usr/local/pgsql/data >logfile 2>&1 &
或者
pg_ctl start -D /usr/local/pgsql/data - 重启server
pg_ctl restart -D /usr/local/pgsql/data
停止
pg_ctl stop -D /usr/local/pgsql/data - 创建数据库:
createdb mydbtest - 连接数据库(默认的是postgres)
psql mydbtest
然后执行:
CREATE USER root WITH PASSWORD 'root'; - pg封装的命令方式,新建用户
createuser -P root
注:输入两次密码如:root
即可
createuser -P root
Enter password for new role:
Enter it again:
远程访问数据库设置
远程访问数据库的认证方式主要有很多方式,这里设置基于TCP/IP连接的trust认证方式,需设置两个配置文件
- 修改配置文件postgresql.conf
vi /usr/local/pgsql/data/postgresql.conf
修改监听地址:
listen_addresses='localhost'
#将上面这行改成如下
listen_addresses='*'
- 修改配置文件/pgsql/data/pg_hba.conf
vi /usr/local/pgsql/data/pg_hba.conf
添加一条IP授权
host all all 127.0.0.1/32 trust
改成
# IPv4 remote address connections:
host all all 0.0.0.0/0 trust
重启server
su - postgres
pg_ctl restart -D /usr/local/pgsql/data
连接
pgsql mydbtest
默认端口5432
Navicat Premium连接图
注:当psql终端的提示符为=#时,表示当前登录的是超级用户,而当提示符为=>时则为普通用户
psql连接说明
- psql连接说明:
psql -h <dbserver_IP> -p<dbserver_port> -d <database_Name> -u <db user>
-h 是指host,如果host是localhost,可以不指定该参数
-p 是指端口,默认的端口号5432
-d 是指连接的db,默认是postgres
-u 是指用户名
- 退出psql
psql退出和其他的命令行工具不一样,psql在退出时并不是使用exit,而是使用\q
这里的q指的是quit。
网友评论