创建PostgreSQL数据库

本文详细介绍了如何使用PostgreSQL进行用户切换、登录数据库、查看及切换超级用户、创建数据库和用户、设置数据归属及权限。通过具体步骤和命令展示,帮助读者掌握PostgreSQL的数据库管理技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、切换用户

su - postgres

2、登录数据库

psql

3、查看数据库超级用户, 这里的超级用户是pgsql,如下图:

postgres=> \du

4、切换为超级管理用户,成功后如下图:

postgres=> \c - pgsql          语法: \c - [user_name]

5、创建数据库和授权用户

create user demo_db with password 'demo_db12345';

create database demo_db with encoding='utf8' ;

grant all privileges on database demo_db to demo_db ;

6、连接建数据库后并改数据的归属用户

\connect demo_db;
create schema extensions;
create extension hstore schema extensions;
CREATE EXTENSION pg_trgm;
ALTER DATABASE demo_db SET search_path to "$user",public,extensions;
alter database demo_db owner to demo_db;
alter schema public owner to demo_db;
alter schema extensions owner to demo_db;
GRANT USAGE ON SCHEMA public to demo_db;

PostgreSQL给模糊搜索加索引 需要启用 CREATE EXTENSION pg_trgm;

<think>好的,我需要帮助用户了解如何使用Navicat创建PostgreSQL数据库。首先,用户可能已经安装了Navicat,但不确定如何连接到PostgreSQL服务器。根据引用[2]和[3],连接需要服务器IP、端口号(默认5432)、用户名和密码。用户可能还需要在华为云服务器上开放端口,如引用[2]提到的5432端口。 接下来,用户可能想创建数据库。Navicat的界面应该有一个右键连接后选择新建数据库的选项,这里需要填写数据库名称、选择所有者,并设置权限。引用[4]提到了创建表时设置主键自增,但用户的问题是关于创建数据库,所以这部分可能暂时不需要,不过可以留着作为扩展。 用户可能遇到的问题包括连接失败,可能的原因有防火墙设置、服务器未运行或权限问题。需要提醒用户检查这些方面,如引用[2]中的端口开放和引用[3]中的连接信息是否正确。 最后,生成相关问题时要围绕连接配置、常见错误、数据库管理和维护,以及高级功能如导入数据或设置权限。确保引用正确的来源,比如引用[4]关于主键自增,可能在相关问题中提到。</think>以下是使用Navicat创建和配置PostgreSQL数据库的详细步骤: ### 一、连接PostgreSQL服务器 1. **新建连接** - 打开Navicat,点击左上角"连接"选择"PostgreSQL" - 填写连接信息: ```yaml 连接名:自定义名称(如"MyPGServer") 主机:服务器IP地址(本地使用localhost) 端口:默认5432[^3] 初始数据库:postgres(默认系统库) 用户名/密码:数据库管理员凭证 ``` - 点击"测试连接",确认成功后保存 2. **服务器端口配置** - 若使用云服务器(如华为云),需在安全组开放5432端口[^2] - 本地服务器需检查防火墙设置 ### 二、创建数据库 1. **右键已建立的连接** ➔ 选择"新建数据库" 2. **设置数据库参数**: ```sql 数据库名:需符合命名规范(建议英文小写) 所有者:选择数据库管理员或指定用户 字符集:推荐UTF8 排序规则:根据业务需求选择(如en_US.UTF-8) ``` $$ \text{权限设置} \begin{cases} \text{安全标签} \\ \text{访问权限} \\ \text{对象权限} \end{cases} $$ 3. **完成创建**:点击"确定"后可在连接树看到新数据库 ### 三、创建数据表(扩展) 1. 右键数据库 ➔ 新建表 2. 设计字段时可通过SQL设定自增主键: ```sql CREATE TABLE employees ( id SERIAL PRIMARY KEY, name VARCHAR(100) NOT NULL )[^4] ``` 3. 使用可视化工具添加索引、约束等对象 §§常见问题解决§§ 1. **连接超时**:检查服务器防火墙/安全组设置[^2] 2. **认证失败**:确认pg_hba.conf文件配置正确 3. **权限不足**:使用管理员账户授权: ```sql GRANT ALL PRIVILEGES ON DATABASE newdb TO username; ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值