LINUX安装教程先直奔主题。PostgreSQL的官方地址就在这:https://www.postgresql.org/,别跑错门。整个安装过程其实不复杂,跟着走一遍就能搞定。1. 点击官网,进入下载页面2. 选择适合版本到了这一步,有两个选择摆在你面前:社区yum安装,或者源码包编译安装。生产环
先直奔主题。PostgreSQL的官方地址就在这:https://www.postgresql.org/,别跑错门。
整个安装过程其实不复杂,跟着走一遍就能搞定。
长期稳定更新的攒劲资源: >>>点此立即查看<<<

到了这一步,有两个选择摆在你面前:社区yum安装,或者源码包编译安装。生产环境下,很多老手更偏向编译安装,因为可以做一些定制化调优。但咱们现在是测试教学,图个方便,yum安装完全够用,也省心。
我这边用的是Linux CentOS 7系统,大家按自己的环境来选就行。

选好系统、版本号和你想要的PostgreSQL版本号,页面会直接生成社区yum下载命令。别犹豫,复制下来,贴到你的虚拟机里就能跑起来。

# Install the repository RPM:sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm# Install PostgreSQL:sudo yum install -y postgresql14-server# Optionally initialize the database and enable automatic start:sudo /usr/pgsql-14/bin/postgresql-14-setup initdb #初始化pgsqlsudo systemctl enable postgresql-14 #设置开机自启动sudo systemctl start postgresql-14
安装完成后,系统会默认创建一个叫postgres的Linux用户。初始化数据库后,又会有一个叫postgres的数据库,用来存基础信息(比如用户信息)。这个逻辑有点像MySQL里默认那个叫mysql的数据库。
在这个数据库里,已经初始化了一个超级用户postgres,后面管理全靠它。
为了方便管理,建议先把这账号的密码改掉。
用su命令切换到postgres用户,自动就进命令行模式了。
su - postgres
psql
alter user postgres with password 'NewPassword';

看到提示说密码修改成功,就搞定。
firewall-cmd --add-port=5432/tcp --permanentfirewall-cmd --reload
#修改配置文件vim /var/lib/pgsql/14/data/postgresql.conf#将监听地址修改为#-----60行-------listen_address='*' #默认listen_address配置是注释掉的,所以也可以直接在配置文件开头加入该行允许所有IP访问#修改配置文件vim /var/lib/pgsql/14/daata/pg_hba.conf-----IPv4 local connections 行----------host all all 0.0.0.0/0 md5#重启postgresql服务systemctl restart postgresql-14



需要注意一点:PostgreSQL在很多地方跟MySQL的SQL语法是兼容的,所以熟悉MySQL的人上手会很快。当然,它也有自己独特的部分,下面带你过一遍。
#psql -h 服务器 -U 用户名 -d 数据库 -p 端口地址 // -U 是大写psql-U dbserver -d exampledb -h 127.0.0.1 -p 5432$ psql (连接数据库,默认用户和数据库都是postgres)#相当于系统用户postgres以同名数据库用户的身份,登录数据库,这是不用输入密码的,如果一切正常,系统提示符会变为"postgres=#",表示这时已经进入了数据库控制台
#创建数据库create database 库名;#展示数据库\l#切换数据库\c mydb#删除数据库drop database 库名;
创建表格时,每一列都必须指定数据类型。PostgreSQL主要提供三类数据类型:数值、字符串、日期/时间。
数值
常见的数值类型,列个表一目了然:
名字 | 存储长度 | 描述 | 范围 |
smallint | 2字节 | 小范围整数 | -32768到+32767 |
integer | 4字节 | 常用的整数 | -2147483648到+2147483647 |
bigint | 8字节 | 大范围整数 | 超大范围 |
decimal | 可变长 | 用户指定的精度,精确 | 小数点前131072位到点后16383位 |
numeric | 可变长 | 用户指定的精度,精确 | 小数点前131072位到点后16383位 |
real | 4字节 | 可变精度,不精确 | 6位十进制数字精度 |
double | 8字节 | 可变精度,不精确 | 15位十进制数字精度 |
字符串
字符串类型也不复杂,看这张图就够了:

日期/时间
日期和时间类型主要有三种:
另外还有布尔值(boolean)、货币(money)、几何数据等,需要的时候查文档就行。
#创建表create table test(id serial(自增) primary key, name varchar(255));#插入数据inser into test(name) values('jack');#查看当前数据库下所有表\d#查看表结构,相当于desc\d 表名#增删改查都与mysql都差不多相同PostgreSQL用序列来实现字段自增长,对应的数据类型是smallserial、serial和bigserial。这个机制跟MySQL的AUTO_INCREMENT是一回事,只是写法不一样。
它们各自的范围如下:
伪类型 | 存储大小 | 范围 |
SMALLSERIAL | 2字节 | 1到32,767 |
SERIAL | 4字节 | 1到2,147,483,647 |
BIGSERIAL | 8字节 | 1到922,337,2036,854,775,807 |
侠游戏发布此文仅为了传递信息,不代表侠游戏网站认同其观点或证实其描述