postgresql数据库创建、修改、删除详解数据库
语法:
Command: CREATE DATABASE
Description: create a new database
Syntax:
CREATE DATABASE name
[ [ WITH ] [ OWNER [=] user_name ]
[ TEMPLATE [=] template ]
[ ENCODING [=] encoding ]
[ LC_COLLATE [=] lc_collate ]
[ LC_CTYPE [=] lc_ctype ]
[ TABLESPACE [=] tablespace_name ]
[ CONNECTION LIMIT [=] connlimit ] ]
参数:
name
新创建数据库的名称。
user_name
新数据库所属用户的角色名称(PostgreSQL角色和用户没有区别),缺省使用执行命令的用户。如果想要给另外的角色创建数据库,那么命令执行者必须是那个角色的成员,或者是超级用户(initdb时使用的用户名或者是创建用户时指定为超级用户)。
template
新数据库使用模板的名称,缺省为template1(建议使用template0,template0是不可修改的空白数据库)。
encoding
新数据库使用的字符集编码。指定一个字符串常量(如 UFT8 ),或者代表字符集编码的整数,或者使用缺省值(即模板数据库使用的字符集编码)。
lc_collate
新数据库使用的排序规则,该参数会影响到字符串的排序,比如查询语句中使用order by,以及文本类型列的索引排序,缺省使用模板数据库的lc_collate。
lc_ctype
新数据库使用的字符分类,该参数会影响字符的分类,比如大写字符、小写字符、数字,缺省使用模板数据库的lc_ctype。
tablespace_name
新数据库相关的表空间名称,缺省使用模板数据库的表空间。在该数据库中创建的所有对象缺省使用该表空间。表空间实际上就是为数据库对象指定一个存储目录,例如重要的数据存储在更安全的目录下,频繁访问的数据存储在性能更好的目录,不同的目录挂载不同的存储介质就可以做到数据的分类存储。使用psql客户端命令/db可查看当前有哪些表空间。
connlimit
新数据库可以接受的并发连接的数量,缺省为-1,表示无限制。
示例
postgres=# create database school with owner=president template=template0 encoding=UTF8 lc_collate=C lc_ctype=C tablespace=tbs_test connection limit = 100; CREATE DATABASE
二、修改数据库
语法:
Command: ALTER DATABASE
Description: change a database
Syntax:
ALTER DATABASE name [ [ WITH ] option [ ] ]
where option can be:
CONNECTION LIMIT connlimit
ALTER DATABASE name RENAME TO new_name
ALTER DATABASE name OWNER TO new_owner
ALTER DATABASE name SET TABLESPACE new_tablespace
ALTER DATABASE name SET configuration_parameter { TO | = } { value | DEFAULT }
ALTER DATABASE name SET configuration_parameter FROM CURRENT
ALTER DATABASE name RESET configuration_parameter
ALTER DATABASE name RESET ALL
参数:
name
要被修改的数据库名称。
connlimit
数据库并发连接数量。
new_name
数据库的新名称。
new_user
数据库的新用户。
new_tablespace
数据库新的表空间。
configuration_parameter
value
为当前数据库会话指定的配置参数设置指定值,如果value的值为DEFAULT,或者使用RESET,数据库指定的设置将被删除。在新的会话中会继承系统范围内的所有默认配置。使用RESET ALL清除所有数据库指定配置,使用SET FROM CURRENT保存当前会话配置参数值为数据库指定值。
示例
postgres=# alter database school connection limit 10; ALTER DATABASE postgres=# alter database school owner to postgres; ALTER DATABASE postgres=# alter database school set tablespace pg_default ; ALTER DATABASE postgres=# alter database school set client_encoding to GBK; ALTER DATABASE postgres=# alter database school reset client_encoding ; ALTER DATABASE postgres=# alter database school reset all; ALTER DATABASE
三、删除数据库
语法:
Command: DROP DATABASE
Description: remove a database
Syntax:
DROP DATABASE [ IF EXISTS ] name
参数:
name
数据库名称
IF EXISTS
使用该参数删除一个不存在的数据库不会抛出错误。
示例
postgres=# drop database if exists school; DROP DATABASE postgres=# drop database if exists school; NOTICE: database "school" does not exist, skipping DROP DATABASE
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/4891.html
相关文章
- Postgresql数据库相关知识及注入
- POSTGRESQL postgresql 升级的需求来自哪里
- 详解postgresql无序uuid性能测试及对数据库的影响
- PostgreSQL数据库基础 之 字符串处理与日期处理操作
- postgreSQL 数据库基础 除法保留小数位如何设置的实例
- 解决postgreSql远程连接数据库超时的问题
- PostgreSQL 查看数据库,索引,表,表空间大小的示例代码
- PostgreSQL 一行变多行详解数据库
- CentOS7安装并配置PostgreSQL详解数据库
- postgresql启动、状态查看、关闭详解数据库
- PostgreSQL调用函数详解数据库
- PostgreSQL语法结构详解数据库
- PostgreSQL外键详解数据库
- linux下操作PostgreSQL的常用命令详解数据库
- postgresql—-网络地址类型和函数详解数据库
- postgresql—-IN&&EXISTS详解数据库
- MongoDB与PostgresQL无责任初步测试详解数据库
- postgresql 触发器详解数据库
- Postgresql复制技术:一次解决永久问题(postgresql复制)
- 创建PostgreSQL数据库:一步一步操作指南(postgresql创建数据库)
- PostgreSQL 取值与行号实践研究(postgresql行号)
- Fedota 24 将数据库升级到 PostgreSQL 9.5
- 使用阿里云PostgreSQL轻松搭建数据库(阿里云postgresql)
- 快速安全!PostgreSQL下载,数据库管理必备!(postgresql下载)
- Postgresql性能优化策略研究(postgresql优化)
- 新手快速登录Postgresql数据库(登录postgresql)
- 如何有效地备份PostgreSQL数据库(备份postgresql)
- gresql比较oracle与postgresql一种新型数据库管理系统的选择(oracle post)