postgresql_基本语法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/du1055669885/article/details/83746244

1.创建数据库:

CREATE DATABASE "db001" WITH ENCODING='UTF8' CONNECTION LIMIT=100 TABLESPACE=pg_default;

2.创建数据表:

create table "db001.table001"(id numeric(12) PRIMARY KEY, phone numeric(12) UNIQUE NOT NULL, name varchar UNIQUE NOT NULL, password text NOT NULL, mail text UNIQUE NOT NULL);

3.账号查看:

cat /etc/passwd,postgre会自动创建用于访问db的linux账号;

su切换到对应账号,即可通过#psql操作数据库。

4.命令行操作:

\?:查看帮助

\q:退出命令行

\d:显示数据库中所有数据表(+t显示非系统表)

\d tablename:显示当前表结构

\d+:多出size和描述

\db:显示所有表空间

\du:显示数据库所有用户

\i file:执行文件中的sql语句

\c dbname:切换数据库

cd 路径:切换路径

\l:列出所有数据库

5.创建用户:

CREATE USER dbuser WITH PASSWORD 'dbuser';

6.修改用户密码:

Alter user postgres with password '123456';

7.创建有所属的数据库:

CREATE DATABASE exampledb OWNER dbuser;

7.改变数据库所有者:

GRANT ALL PRIVILEGES ON DATABASE exampledb TO dbuser;

8.本地连接数据库:

如果/var/lib/pgsql/9.6/data/pg_hba.conf设置local连接认证为peer,则免密:

#psql

9.远程连接数据库:

psql -h ip之地 -d 数据库 -U 用户名

10.用户组管理:

创建用户,create role role_emp;

查看用户,select rolname from pg_roles;

修改用户,alter role  用户名1  rename  to  用户名2;

删除用户,drop role  用户名;

登录权限,create  role  用户名 login;

超级用户,create role  用户名 superuser;

可建数据库, create role  用户名 createdb;

可建用户,create role 用户名 createrole;

建密码用户,create role 用户名 password '密码';

CREATE USER与ROLE,区别,默认有登录权限;

删除用户,drop user 用户名 ;

修改密码,alter user 用户名 password '密码';

给用户授权,alter role 用户名 权限1(createdb),权限2,...

给用户去权,alter role 用户名   nocreatedb  nocreaterole;

11.DB权限管理:

修改数据库的拥有者,alter  database  数据库名称  owner  to  拥有者名字;

增加用户的数据表权限,grant 权限  on 数据表  to 用户名;

猜你喜欢

转载自blog.csdn.net/du1055669885/article/details/83746244