Oracle 数据库创建 DBCA

Oracle 数据库创建 DBCA

适用版本:Oracle Database 11g / 12c / 19c / 23ai 文档版本:v1.0 / 2026-07


1. 概述

DBCA(Database Configuration Assistant)创建数据库[1]:

模式

  • GUI
  • 静默

详细见:Oracle 19c 静默安装


2. GUI 创建

2.1 启动

dbca

2.2 步骤

1. 选择操作:Create Database
2. 创建模式:Advanced Configuration
3. 部署类型:General Purpose / Transaction Processing
4. 数据库标识:DB Name / SID
5. 存储选项:FS / ASM
6. Fast Recovery Area
7. 网络配置
8. 数据选项
9. 内存 / 进程
10. 字符集
11. 创建

3. 静默创建

3.1 单实例

dbca -silent -createDatabase \
  -templateName General_Purpose.dbc \
  -gdbName orcl \
  -sid orcl \
  -sysPassword Oracle123 \
  -systemPassword Oracle123 \
  -storageType FS \
  -datafileDestination /u01/app/oracle/oradata \
  -recoveryAreaDestination /u01/app/oracle/fast_recovery_area \
  -recoveryAreaSize 10240 \
  -characterSet AL32UTF8 \
  -nationalCharacterSet AL16UTF16 \
  -listeners LISTENER \
  -totalMemory 4096 \
  -databaseType OLTP \
  -emConfiguration NONE

3.2 CDB

dbca -silent -createDatabase \
  -templateName General_Purpose.dbc \
  -gdbName orcl \
  -sid orcl \
  -createAsContainerDatabase true \
  -numberOfPDBs 1 \
  -pdbName orclpdb \
  -pdbAdminPassword Oracle123 \
  -sysPassword Oracle123 \
  -systemPassword Oracle123 \
  -storageType FS \
  -datafileDestination /u01/app/oracle/oradata \
  -characterSet AL32UTF8 \
  -totalMemory 4096

3.3 RAC

dbca -silent -createDatabase \
  -templateName General_Purpose.dbc \
  -gdbName orcl \
  -sid orcl \
  -databaseConfigType RAC \
  -nodelist rac1,rac2 \
  -sysPassword Oracle123 \
  -systemPassword Oracle123 \
  -storageType ASM \
  -diskGroupName +DATA \
  -recoveryGroupName +FRA \
  -characterSet AL32UTF8 \
  -createAsContainerDatabase true \
  -numberOfPDBs 1 \
  -pdbName orclpdb \
  -pdbAdminPassword Oracle123 \
  -totalMemory 4096

4. 模板

4.1 内置模板

General_Purpose.dbc      - 通用
Data_Warehouse.dbc       - 数据仓库
Custom                   - 自定义

4.2 自定义模板

# 创建模板
dbca -silent -createTemplateFromDB \
  -sourceDB orcl \
  -templateName my_template.dbc \
  -sysDBAUserName sys \
  -sysDBAPassword Oracle123

5. 数据库配置

5.1 内存

-totalMemory 4096    # MB
# 或
-memoryPercentage 40  # 物理内存百分比

5.2 字符集

-characterSet AL32UTF8
-nationalCharacterSet AL16UTF16

5.3 进程数

-initParams processes=500

5.4 块大小

-initParams db_block_size=8192

6. 监听配置

-listeners LISTENER
# 或自动

7. EM 配置

7.1 不配置

-emConfiguration NONE

7.2 EM Express

-emConfiguration EXPRESS
-emExpressPort 5500

7.3 Enterprise Manager

-emConfiguration CENTRAL
-emRepository...

8. 删除数据库

dbca -silent -deleteDatabase -sourceDB orcl

9. 配置数据库

9.1 添加实例(RAC)

dbca -silent -addInstance \
  -gdbName orcl \
  -node rac2 \
  -sysDBAUserName sys \
  -sysDBAPassword Oracle123

9.2 删除实例

dbca -silent -deleteInstance \
  -gdbName orcl \
  -node rac2 \
  -sysDBAUserName sys \
  -sysDBAPassword Oracle123

10. PDB 管理

10.1 创建 PDB

dbca -silent -createPluggableDatabase \
  -sourceDB orcl \
  -pdbName hrpdb \
  -pdbAdminUserName hradmin \
  -pdbAdminPassword Oracle123

10.2 删除 PDB

dbca -silent -deletePluggableDatabase \
  -sourceDB orcl \
  -pdbName hrpdb

11. 验证

11.1 数据库

sqlplus / as sysdba
SQL> SELECT name, open_mode, log_mode FROM v$database;
SQL> SELECT * FROM v$version;

11.2 PDB

SQL> SELECT name, open_mode FROM v$pdbs;

11.3 监听

lsnrctl status

12. 常见坑与排错

12.1 创建失败

# 1. 日志
$ORACLE_BASE/cfgtoollogs/dbca/orcl/

# 2. 空间
df -h

# 3. 内存
free -m

12.2 字符集错误

# 1. 删除重建
# 2. AL32UTF8 推荐

12.3 监听失败

# 1. 检查 listener.ora
# 2. 启动监听
lsnrctl start

13. 最佳实践

  1. 静默安装:自动化
  2. AL32UTF8:国际化
  3. CDB 架构:12c+
  4. 内存合理:性能
  5. 归档模式:备份
  6. FRA 配置:恢复
  7. EM Express:管理
  8. 验证完整:功能
  9. 文档化:配置
  10. 备份:保护

14. 参考资料

[1] Oracle Database Administrator’s Guide 19c, “Creating Database with DBCA” https://docs.oracle.com/en/database/oracle/oracle-database/19/admin/creating-and-configuring-an-oracle-database.html