官网下载链接:https://www.postgresql.org/download/

官网给出了不同操作系统的下载方式。

本次使用Rocky9.6版本下载;

这里有不同版本推荐使用的postgresql的版本:

根据版本选择数据库版本;

根据命令安装:

sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo dnf -qy module disable postgresql
sudo dnf install -y postgresql16-server
sudo /usr/pgsql-16/bin/postgresql-16-setup initdb
sudo systemctl enable postgresql-16
sudo systemctl start postgresql-16

前三条命令是安装数据库;

sudo /usr/pgsql-16/bin/postgresql-16-setup initdb   ---这里开始初始化;

然后是开机自启,启动.....

启动后查看数据库版本:

psql --version

 

以默认用户postgres身份进入PostgreSQL

su - postgres

启动psql

psql

查看数据库

\l

 

 

修改PostgreSQL数据库用户密码

 

ALTER USER postgres WITH PASSWORD '123456';

设置成功:

 配置PostgreSQL远程访问

找到postgresql数据库配置的位置:

find  /  -name 'postgresql.conf' 2>/dev/null      ---使用root账户查看

配置PostgreSQL远程访问

vim /var/lib/pgsql/16/data/postgresql.conf

 将listen_addresses = 'localhost' 改为     listen_addresses = '*' 

修改/var/lib/pgsql/data/pg_hba.conf文件,新增: host all all 0.0.0.0/0 md5

重启PostgreSQL服务

systemctl restart postgresql-16

 

使用远程连接PostgreSQL数据库方式测试(主机IP地址,默认密码123456)

 psql -h192.168.224.3 -Upostgres -W  

 

关闭防火墙:

systemctl stop firewalld

永久关闭防火墙:

systemctl disable firewalld

 

然后可以使用navicat连接测试;

 

数据库语法相关示例:

CREATE DATABASE mydb;                                #创建数据库
\l                                                   #查看所有数据库
\c mydb                                              #切换当前数据库
CREATE TABLE test(id int,body varchar(100));         #创建表
\d                                                   #查看当前数据库下所有表

用户与访问授权语法示例:

CREATE USER test WITH PASSWORD 'test';              #新建用户
GRANT ALL PRIVILEGES ON DATABASE mydb TO test;      #赋予指定账户指定数据库所有权限
REVOKE ALL PRIVILEGES ON DATABASE mydb TO test;     #移除指定账户指定数据库所有权限

 

 

固定ip:

在 Rocky Linux 9.6 中设置静态 IP 地址可以通过修改 NetworkManager 配置文件来实现。通常,网络接口的配置文件位于 /etc/NetworkManager/system-connections/ 目录下,文件名通常为接口名称加上 .nmconnection 后缀,例如 eth0.nmconnection。

以下是一个完整的配置示例,展示了如何为 eth0 接口配置静态 IP 地址:

[connection]
id=eth0
uuid=af13006e-9462-3686-a2d9-b12bf54f9782
type=ethernet
autoconnect-priority=-999
interface-name=eth0
timestamp=1740916186

[ethernet]

[ipv4]
address1=192.168.20.10/24,192.168.20.1
dns=114.114.114.114,8.8.8.8
method=manual

[ipv6]
addr-gen-mode=eui64
method=auto

[proxy]

配置后重启网卡生效:

sudo systemctl restart NetworkManager

 使用 ip a命令验证 IP 地址是否已正确配置

ip a show eth0

 

配置说明:

    [connection]: 定义连接的基本信息。
        id: 连接的名称,通常与接口名称一致。
        uuid: 唯一标识符,用于识别该连接。
        type: 连接类型,这里是 ethernet。
        autoconnect-priority: 自动连接优先级,负值表示不自动连接。
        interface-name: 网络接口的名称,这里是 eth0。
        timestamp: 连接创建的时间戳。
    [ipv4]: 配置 IPv4 地址和相关设置。
        address1: 静态 IP 地址、子网掩码和默认网关。格式为 IP地址/子网掩码,网关。
        dns: DNS 服务器地址,多个地址用逗号分隔。
        method: IP 地址分配方法,manual 表示手动配置静态 IP。
    [ipv6]: 配置 IPv6 地址。
        addr-gen-mode: IPv6 地址生成模式,eui64 表示使用 EUI-64 模式。
        method: IPv6 地址分配方法,auto 表示自动配置。
    [proxy]: 代理设置,此处为空,表示不使用代理。

 

 

更多推荐