本文是一个 下载 , 安装,建表 , 一个简单完整的流程, 就当入门前的小铺垫吧
目录
一步一步来
1.安装rpm文件
yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
yum install postgresql10
yum install postgresql10-server
/usr/pgsql-10/bin/postgresql-10-setup initdb
systemctl enable postgresql-10 //设置自动启动 systemctl start postgresql-10 //启动postgresql服务
当然了看官网也可以, 为避免找直接贴出来吧, 后续想了解也可以直接从官网上看 , 这样还可以选择环境和版本进行命令安装
https://www.postgresql.org/download/linux/redhat/
1、使用postgres用户登录(PostgresSQL安装后会自动创建postgres用户,无密码, 不用担心放心大胆走), 然后登录数据库
su - postgres //用postgres用户 psql //登录数据库
来张图缓解一下
2、创建用户和数据库并授权
create user pguser with password 'abc123'; // 创建用户 create database pguser_db owner pguser; // 创建数据库 grant all privileges on database pguser_db to pguser; // 授权 , 就是把您创建的数据库授权给你创建的用户 \q // 退出psql(输入 \q 再按回车键即可), 就是进入一个bash了
再来张图片
注: 细心的话, 发现第一行,有个错, 没错是的 , 因为我建用户时时pg_开头的, 所以呵呵, 冲突了
安装, 数据库和用户也创建了,授权了,下面肯定想办法连接了, 默认是不能远程访问的,
1、修改/var/lib/pgsql/10/data/postgresql.conf文件,取消 listen_addresses 的注释,将参数值改为“*”, 原本是localhost的, 改成 * 你懂得
vim /var/lib/pgsql/10/data/postgresql.conf
2、修改/var/lib/pgsql/10/data/pg_hba.conf文件(想知道这个配置文件又是啥, 自己百度)
vim /var/lib/pgsql/10/data/pg_hba.conf
看着图里面, 看准位置, 添加到哪里了(方便管理)
3、重启postgresql服务
systemctl restart postgresql-10.service
建议另打开一个窗口, 直接敲这个命令
重启后 , 就需要用工具连接一下试试了, 直接看图吧
不要在意端口 , 因为默认就是5432, 当然你可以改
当然了, 不甘心的, 想自己修改一些操作的 , 可以
1、修改默认生成的 postgres 用户密码
su - postgres psql -U postgres alter user postgres with encrypted password '1';
上面第一行的postgres和第二行的postgres是肯定不一样的,第一行的为操作系统的用户额能让你登进去 ,第二行为数据库的用户 ,让你登数据库的, 我们用的肯定是第二个啦, 上面这个就是把默认的postgres的账号密码改成"1" 了
这个就不贴图了 , 没必要, 当然后修改过密码后肯定又要经历重启,查看什么的命令 , 直接贴上去, 方便
2、服务启动、关闭、重启、查看状态命令
systemctl start postgresql-10.service // 启动服务 systemctl stop postgresql-10.service // 关闭服务 systemctl restart postgresql-10.service // 重启服务 systemctl status postgresql-10.service // 查看状态
下面来建个表
这个建表, 先建索引, 然后表语句, 再有注解, 最后赋个权限
DROP TABLE IF EXISTS "public"."表名字"; DROP SEQUENCE IF EXISTS "public"."表名字_id_seq"; CREATE SEQUENCE "public"."表名字_id_seq" INCREMENT 1 MINVALUE 1 MAXVALUE 2147483647 START 1 CACHE 1; CREATE TABLE "public"."表名字" ( "id" int4 NOT NULL DEFAULT nextval('表名字_id_seq'::regclass), "main_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL, "telephone" varchar(20), "send_message" int4, "times" int4, "type" int4, "create_time" timestamp(0), "update_time" timestamp(0) ) ; COMMENT ON COLUMN "public"."表名字"."telephone" IS '手机号码'; COMMENT ON COLUMN "public"."表名字"."send_message" IS '是否需要发送短信'; COMMENT ON COLUMN "public"."表名字"."times" IS '短信发送次数'; COMMENT ON COLUMN "public"."表名字"."type" IS '发送短信类型'; CREATE INDEX "index_表名字_main_id" ON "public"."表名字" USING btree ( "main_id" COLLATE "pg_catalog"."default" "pg_catalog"."text_ops" ASC NULLS LAST ); GRANT Delete, Insert, Select, Truncate, Update ON TABLE "public"."表名字" TO "用户名字"; GRANT Update,Select ON TABLE "public"."表名字_id_seq" TO "用户名字";
ok , 打完收工 .
*欢迎各位点评 , 当然有其他资料 , 可以互相分享 , 交流学习 *