ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

PostgreSQL安装流程

2021-07-06 00:00:06  阅读:199  来源: 互联网

标签:10 PostgreSQL postgres 流程 用户 id postgresql 安装 public


PostgreSQL安装

本文是一个 下载 , 安装,建表 , 一个简单完整的流程, 就当入门前的小铺垫吧

安装前置信息

  • 环境: centos7版本(都可以)
  • PostgreSql版本: PostgreSQL 10.10, 64-bit
  • 下面操作我是用root 账号, 其他也可以,但是不方便需要授权命令啥的

目录

  1. 安装步骤安装语句
  2. 连接
  3. 自定义修改
  4. 建表

一步一步来

  • 安装步骤安装语句

1.安装rpm文件

yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
  1. 安装客户端(client)
yum install postgresql10
  1. 安装服务端(server)
yum install postgresql10-server
  1. 初始化操作
/usr/pgsql-10/bin/postgresql-10-setup initdb
  1. 自启动,启动pg服务
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

pg的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 , 打完收工 .

*欢迎各位点评 , 当然有其他资料 , 可以互相分享 , 交流学习 *

标签:10,PostgreSQL,postgres,流程,用户,id,postgresql,安装,public
来源: https://blog.csdn.net/he_mu_renshen/article/details/118500408

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有