在 PostgreSQL 中设置数据库名称(即数据库名)通常涉及以下步骤:
一、创建新数据库
使用 `createdb` 命令 通过 PostgreSQL 提供的 `createdb` 命令可以快速创建新数据库。例如,创建名为 `mydatabase` 的数据库:
```bash
createdb mydatabase
```
默认情况下,新数据库的权限授予当前用户。
使用 `psql` 命令行工具
通过 `psql` 进入 PostgreSQL 后,可以使用 `CREATE DATABASE` 语句:
```sql
CREATE DATABASE mydatabase;
```
创建后需使用 `\c mydatabase` 切换到新数据库。
二、修改现有数据库名称
若需重命名现有数据库,需停止数据库服务或使用 `pg_dump`/`pg_restore` 工具:
停止数据库服务
在 Linux 系统中,可停止 PostgreSQL 服务:
```bash
sudo systemctl stop postgresql
```
然后使用 `pg_dump` 导出数据:
```bash
pg_dump -U username -F c -b -v oldname > oldname.dump
```
重启服务并使用 `pg_restore` 导入数据到新名称:
```bash
sudo systemctl start postgresql
pg_restore -U username -d newname oldname.dump
```
使用 `pg_dump` 和 `pg_restore`(无需停止服务)
通过管道操作实现数据库迁移:
```bash
pg_dump -U username -F c -b -v oldname | pg_restore -U username -d newname
```
注意:此方法需确保新数据库用户具有相应权限。
三、注意事项
权限管理: 创建数据库时需指定拥有者(如 `postgres`)或使用 `CREATE DATABASE ownername` 指定新所有者; 连接配置
数据安全:生产环境操作建议先备份数据,避免数据丢失。
以上方法可根据具体需求选择,创建新数据库更简单直接,而重命名需谨慎操作。