postgresql实用摘要

0. 文档

建议从完善文档的版本开始,低于官网2个版本。比如 v13(截止2023年4月)。

官网最新版本往往是开发板,次版本是最近一次稳定版。所以建议往前使用2个版本。

1. 进入控制界面

psql 是shell命令

# 以默认用户进入
# psql [OPTION]... [DBNAME [USERNAME]]

# 以特定用户进入, 往往会认为是  使用 A用户名,进入同名数据库
# 不指定不同系统状态不同,MacOS 以当前用户为 superuser, Linux 是 postgres 需要切换至该用户
# 如果 没有用户,或者 没有同名数据库会失败
psql -U <username>


# 进入数据库
psql <database>
psql -d <database>

# 一般默认会创建 postgres 数据库
# 下面命令会以当前用户,指定数据库登录
psql -d postgres

用来确认自己

  1. 打印当前用户名
    SELECT current_user, current_database();
    
  2. 查看所有用户
SELECT usename FROM pg_user;
``

3. 列出所有数据库

\l


4. 进入某个数据库

\c

5. 列出所有表

需要进入一个数据库的基础上执行

\dt


6. 获取帮助

\?


# 1.1 数据库相关

这是一个shell命令

创建数据库

createdb [OPTION]… [DBNAME] [DESCRIPTION]

createdb

删除数据库

dropdb




# 2. 用户相关

2.1 创建用户

createuser [OPTION]… [ROLENAME]

创建可以在终端交付的用户

createuser --interactive

创建超级用户

createuser -s

更多查看

createuser –help


2.2 删除用户

dropuser



# 3. Postgresql 创建 用户以及同名数据库

在 PostgreSQL 中,可以通过以下步骤创建一个用户并创建同名数据库:

    使用超级用户登录到 PostgreSQL 数据库。例如,使用命令行工具 psql 并输入以下命令:

$ psql -U postgres

其中 postgres 是超级用户的名称。

创建一个新用户。假设要创建一个名为 myuser 的用户,可以使用以下命令:
```sql
CREATE USER myuser WITH PASSWORD 'mypassword';

这将创建一个新用户,并为该用户设置密码为 mypassword。

创建同名数据库。接下来,可以使用以下命令创建一个名为 myuser 的数据库:

CREATE DATABASE myuser;

这将创建一个与新用户同名的数据库。

授予用户对数据库的访问权限。最后,您需要授予新用户访问其同名数据库的权限。可以使用以下命令:

    GRANT ALL PRIVILEGES ON DATABASE myuser TO myuser;
这将授予 myuser 用户对 myuser 数据库的完全访问权限。

完成以上步骤后,新用户 myuser 将能够连接到同名的数据库,并且有完全的访问权限。

4. 从文件导入数据库

psql 中 COPY 命令可以把整个文件导入数据库。

sql-copy

比如把 CSV 文件导入到数据库:

COPY word ( word, phonetic ) FROM '</abs/path/to/csv>' DELIMITER ',' CSV HEADER;

查看配置路径

  1. 进入 postgresql psql

  2. 打印配置文件路径 SHOW data_directory;

允许 0.0.0.0 访问

配置目录下

postgresql.conf

其中 listen_address = '*'

brew info postgresql 查看重启服务命令

Mark24

Everything can Mix.