女朋友都会的纯净Linux PostgreSQL离线安装教程

PostgreSQL数据库安装,基于版本10.5.1安装,
在Linux系统上使用*.gz二进制压缩包手动安装。
安装包: postgresql-10.5.1-linux-x64-binaries.tar.gz

tar包百度网盘地址
提取码:f55w

1. 创建postgres用户

groupadd postgres							//添加组成员
useradd -g postgres postgres				//添加用户
passwd  postgres							//重置密码

2. 创建必须目录

①. 进入下载目录

//解压完成后会自动生成pgsql目录
tar -zxvf postgresql-10.1-linux-x64-binaries.tar.gz -C /opt

②. 创建data目录:

//在pgsql下创建data目录
mkdir -p /opt/pgsql/data    	

//在pgsql下创建log目录
mkdir -p /opt/pgsql/log 		

③. 授权:

//给pgsql目录授权postgres用户权限     root用户给普通用户授权
chown -R postgres.postgres pgsql		

④. 这里如果不授权,后面初始化时候会报权限错误:

fixing permissions on existing directory /data/service/postgresql/data … initdb: could not change permissions of directory “/data/service/postgresql/data”: Operation not permitted

3. 初始化 (操作postgreSQL不能使用root用户)

//进入postgres用户
su  - postgres		

//进入pgsql的bin目录  bin目录可以开启关闭进入数据库
cd /opt/pgsql/bin

//初始化数据库  
//-E 设置编码格式  -D  设置刚才创建的数据目录
./initdb -E utf8 -D /opt/pgsql/data

4. 启动数据库

①. 使用postgres用户在/opt/pgsql/bin目录启动

//启动方式1
cd /opt/pgsql/bin
./pg_ctl -D /opt/pgsql/data/ > /opt/pgsql/log/postgres.log start

//启动方式2
./postgres -D /opt/pgsql/data/ > /opt/pgsql/log/postgres.log &

②. 登录数据库:

[postgres@server2 bin]$ ./psql

psql.bin (10.5.1)
Type "help" for help.

postgres=# 

③. 到此postgresql安装完成,可以开始正常服务,大家如果想创建自己的数据库,用户和密码可以使用:
验证使用:
添加新用户和创建数据库

postgres=# create user csz with password '123';
CREATE ROLE
postgres=# create database test with encoding='utf8' owner=csz;
CREATE DATABASE

④. 验证登录

// -u 用户  -d 数据库
[postgres@server2 bin]$ ./psql -U csz-d test
psql.bin (10.5.1)
Type "help" for help.

test=> 

5. 配置远程访问

vim /opt/pgsql/postgresql.conf

修改为如下:

listen_addresses = '*'
port = 5432

说明:PostgreSQL安装完成后,默认是只接受来自本机localhost的连接请求,
listen_addresses设置为 * 来允许数据库服务器监听来自任何主机的连接请求,
并且对外提供的服务端口是5432(默认端口)。

vim /opt/pgsql/pg_hba.conf

在文件最下方添加如下配置:

host all all 0.0.0.0/0 trust

说明:上面的配置允许任意IP和用户访问该数据库,
建议仅用作测试时使用,在公网需要考虑安全问题。

也可以指定ip进行访问

host  all    all    127.0.0.1/32     trust
host  all    all    192.168.1.0/24    md5

其中,数字24是子网掩码,表示允许192.168.1.0–192.168.1.255的计算机访问!

//配置完成后重启PostgreSQL,使配置生效
cd /opt/pgsql/bin
./pg_ctl -D /opt/pgsql/data  restart

6. 配置防火墙

有网可以装防火墙

yum install firewalld systemd -y

①. 查看已经开放的端口

firewall-cmd --list-ports

②. 开放5432端口

firewall-cmd --zone=public --add-port=5432/tcp --permanent

③. 重启防火墙

systemctl reload firewalld

④. 防火墙命令

//状态
systemctl status firewalld

//启动
systemctl start firewalld

//关闭
systemctl stop firewalld

7. sql文件导入导出

①. 导入sql

//进入postgreSQLbin目录

//-U postgres 用户名  使用postgres用户进行导入   test数据库名称  test.sql数据库文件位置
psql -h  127.0.0.1   -U postgres test < test.sql

②. 导出sql

//-U testuser 用户名   test数据库名称  保存数据库文件位置
psql -h  127.0.0.1   -U testuser test > /home/test.sql

8. docker方式进入postgreSQL

//进入 容器
docker exec -it postgres /bin/bash

//将当前root切换成postgres
su postgres

输入用户名,密码再命令执行完后,再根据提示输入
psql -U postgres -W

输入密码,登录成功

女朋友都会的纯净Linux PostgreSQL离线安装教程_第1张图片

你可能感兴趣的:(数据库,postgresql,sql)