PostgreSQL创建数据库的方法介绍PostgreSQL 是一个开源的高级数据库管理系统,支持关系(SQL) 和非关系(JSON) 查询。在 PostgreSQL 中,重点主要是可扩展性和 SQL 合规性,同时在事务中维护ACID属性(原子性、一致性、隔离性、持久性)。在本教程中,你将学习如何使用三种不同的方法在 PostgreSQL 中创建数据库,包括对应的PostgreSQL创建数据库示例。先决条件
- 安装并设置 PostgreSQL
- 管理员权限
文章图片
第 2 步:在浏览器部分,展开服务器,然后展开PostgreSQL项目。右键单击数据库项。单击创建和数据库...
文章图片
第 3 步:PostgreSQL创建数据库的方法:弹出一个新窗口,你需要在其中指定数据库名称,必要时添加注释并单击“保存”。
文章图片
数据库出现在数据库对象树中。pgAdmin 窗口的右侧部分包含显示数据库统计信息、用于创建数据库的 SQL 命令、任何依赖项等的选项卡。注意:向数据库中插入数据时要注意数据类型。阅读我们的文章以了解MySQL 中的不同数据类型。通过 CREATE DATABASE 在 PostgreSQL 中创建数据库PostgreSQL如何创建数据库?创建 PostrgreSQL 数据库的另一种方法是使用CREATE DATABASE命令。按照以下步骤创建数据库:步骤 1:打开SQL Shell (psql)应用程序。
文章图片
第 2 步:按四次ENTER连接到数据库服务器。如果询问,请输入你的主密码。如果你没有设置密码,请再次按ENTER进行连接。
文章图片
第 3 步:使用以下语法创建新数据库:
CREATE DATABASE [
database_name]
代替
[database_name]
,输入数据库的名称。请确保输入唯一名称,因为使用现有数据库名称会导致错误。例如:文章图片
PostgreSQL创建数据库的方法:创建一个不指定任何参数的数据库从默认模板数据库中获取参数。请参阅下一节中的可用参数。第 4 步:使用以下命令列出 PostgreSQL 中的所有数据库:
\l
文章图片
输出显示可用数据库及其特征的列表。PostgreSQL创建数据库示例:创建数据库参数
创建数据库的可用参数有:
[OWNER = role_name]
OWNER
参数分配数据库所有者角色。省略OWNER
参数意味着数据库所有者是用于执行CREATE DATABASE
语句的角色。[TEMPLATE = template]
TEMPLATE
参数允许你指定从中创建新数据库的模板数据库。省略TEMPLATE
参数将template1设置为默认模板数据库。[ENCODING = encoding]
ENCODING
参数确定新数据库中的字符集编码。[LC_COLLATE = collate]
LC_COLLATE
参数指定新数据库的整理顺序。此参数控制ORDER BY
子句中的字符串排序顺序。当使用包含特殊字符的语言环境时,效果是可见的。省略LC_COLLATE
参数会从模板数据库中获取设置。[LC_CTYPE = ctype]
LC_CTYPE
参数指定新数据库中使用的字符分类。字符分类包括小写、大写和数字。省略LC_CTYPE
参数采用模板数据库中的默认设置。[TABLESPACE = tablespace_name]
TABLESPACE
参数为新数据库指定表空间名称。省略TABLESPACE
参数采用模板数据库的表空间名称。[ALLOW_CONNECTIONS = true | false]
ALLOW_CONNECTIONS
参数可以是TRUE
或FALSE
。将值指定为FALSE
可防止你连接到数据库。[CONNECTION LIMIT = max_concurrent_connections]
CONNECTION LIMIT
参数允许你设置到 PostgreSQL 数据库的最大同时连接数。默认值为-1
,表示无限连接。[IS_TEMPLATE = true | false ]
IS_TEMPLATE
参数设置为TRUE
或FALSE
。设置IS_TEMPLATE
为TRUE
允许任何具有CREATEDB
克隆数据库权限的用户。否则,只有超级用户或数据库所有者才能克隆数据库。要创建带参数的数据库,请WITH
在CREATE DATABASE
语句后添加关键字,然后列出所需的参数。例如:文章图片
此示例显示如何将新数据库设置为使用 UTF-8 字符编码并支持最多 200 个并发连接。通过 createdb 命令在 PostgreSQL 中创建数据库PostgreSQL如何创建数据库?该
createdb
命令是在 PostgreSQL 中创建数据库的第三种方法。createdb
和CREATE DATABASE
命令之间的唯一区别是用户createdb
直接从命令行运行并一次性向数据库中添加注释。PostgreSQL创建数据库的方法:要使用该createdb
命令创建数据库,请使用以下语法:createdb [
argument] [
database_name [
comment]]
这些参数将在下一节中讨论。注意:在连接到 template1 数据库时从 psql
createdb
内部运行CREATE DATABASE
。除了 postgres 超级用户之外,创建数据库的用户是唯一的 DBA,也是唯一可以删除数据库的用户。PostgreSQL创建数据库示例:createdb 参数该
createdb
语法参数:
范围 | 描述 |
---|---|
[argument] |
createdb 接受的命令行参数。下一节讨论。 |
[database_name] |
设置数据库名称代替database_name 参数。 |
[comment] |
与新数据库相关联的可选注释。 |
可用的
createdb
参数是:
争论 | 描述 |
---|---|
-D |
指定新数据库的表空间名称。 |
-e |
显示createdb 发送到服务器的命令。 |
-E |
指定要在数据库中使用的字符编码。 |
-l |
指定要在数据库中使用的语言环境。 |
-T |
指定要用作新数据库模板的数据库。 |
--help |
显示有关createdb 命令行参数的帮助页面。 |
-h |
显示运行服务器的机器的主机名。 |
-p |
设置服务器用于侦听连接的 TCP 端口或本地 Unix 域套接字文件扩展名。 |
-U |
指定用于连接的用户名。 |
-w |
指示createdb 从不发出密码提示。 |
-W |
指示createdb 在连接到数据库之前发出密码提示。 |
文章图片
在这里,我们使用默认管理员用户postgres创建了一个名为mydatabase的数据库。我们使用phoenixnap数据库作为模板,并指示程序不要询问密码。createdb 命令常见错误
用户在使用createdb命令时可能会遇到一些常见错误。请参阅
createdb
下面的错误列表:
错误 | 描述 |
---|---|
createdb 找不到相关命令。 |
当 PostgreSQL 安装不正确时发生。createdb 从 PostgreSQL 安装路径运行或将psql.exe路径添加到 PC 高级设置中的系统变量部分。 |
没有这样的文件或目录 服务器是否在本地运行并接受 Unix 域套接字上的连接...? | 当 PostgreSQL 服务器未正确启动或当前未运行时发生。 |
致命:角色“用户名”不存在。 | 当用户initdb 以没有超级用户权限的角色运行时发生。
要修复错误,请使用--superuser 选项创建新用户或登录到默认管理员角色postgres。 |
数据库创建失败:错误:创建数据库的权限被拒绝。 | 在尝试使用没有必要权限的帐户创建数据库时出现。要修复该错误,请向相关角色授予超级用户权限。 |
推荐阅读
- 如何列出PostgreSQL中的所有数据库(三种方法)
- 12个最佳云数据库合集推荐(使用哪一个更好())
- 如何在Ubuntu 20.04上设置DNS名称服务器(分步指南)
- 如何在Linux中使用Modprobe命令(用法示例指南)
- 如何使用Linux xargs命令(用法示例指南)
- Virtualbox与VMware比较(有什么区别(哪个更好?))
- 如何修复SSH失败Permission Denied (publickey,gssapi-keyex,gssapi-with-mic)
- 如何修复SSH Connection Refused错误(详细指南)
- 硬盘安装器windows7下载