jk's notes
  • 使用 DBCA 创建数据库

使用 DBCA 创建数据库

安装好 Oracle 12c 数据库软件后, 就可以开始创建数据库了.

  • 可以使用 SQL 创建.
  • 可以使用 DBCA 工具进行创建.

1. 查看数据库目录

可以使用环境变量来查看数据库目录:

ll $ORACLE_BASE

image-20230710094613374

这里表示只有一个数据库软件, 还没有数据库.

可以先简单查看一下目录中的内容. 主要是一些名为 admin 的目录

2. 执行 dbca

dbca 数据库配置助手, 命名为 database configuration assistant.

执行命令: dbca

该命令在目录 $ORACLE_HOME/bin 下, 由于之前配置了环境变量, 因此可以直接运行.

image-20230710100918519

然后进入向导:

image-20230710100942684

如果是第一次安装数据库, 仅有两个选项:

  • 创建数据库 (Create Database)
  • 管理模板 (Manage Templates)

其他选项未被激活.

2.1 配置数据库

点击下一步后进入创建模式的选择, 有两个选择:

  1. 使用默认配置
  2. 高级模式

image-20230710102407627

如果使用模型配置, 这里只需要设置数据库名字, 管理员密码, 以及创建容器数据库, 和插件数据库名.

其中容器数据库是 12c 中的一个特性. 这里我们选择高级模式, 可以一步步进行配置.

可以看到选择高级模式后, 左侧的步骤条变多了.

image-20230710102615336

选择下一步, 进入数据库模板的选择:

image-20230710102714940

这里展示三个模板, 分别是:

  1. 事务处理数据库, 也就是通常所说的 OLTP, 联机事务处理数据库.
  2. 自定义数据库.
  3. 用于数据仓库的数据库.

一般选择第一个, 事务型数据库. 然后点击下一步:

image-20230710103100980

此时设置全局数据库名字, 以及系统唯一标识 (SID).

参考之前环境变量配置中配置的 SID 为 orcl

image-20230710103242242

这里容器数据库的复选框不用勾选 (后面会详细介绍). 点击下一步

image-20230710103349090

进入设置指定管理选项. 这里配置的是 Oracle 自带的管理选项, 端口使用 5500, 默认即可. 点击下一步

进入管理员密码设置向导

image-20230710103606050

上面使用不同的密码, 下面选项则是使用相同的密码进行管理, 并且输入密码如果不安全会给提示.

这里使用统一密码 Sa12345678, 然后点击下一步

image-20230710103859021

然后进入监听器的选择, 这里没有启用监听器, 所以这里什么也没有, 直接点击下一步

image-20230710104202923

image-20230710104219770

这里分别设置:

  1. 数据库存储文件系统, 默认使用文件系统, 还有一个 ASM, 自动存储管理, 以后介绍. 这里默认即可.
  2. 设置快闪恢复区以及大小. 保持默认即可.
  3. 是否启用归档, 也是默认.

image-20230710105118683

下一步进入示例数据库的选择 (Schema 这里可以直接翻译为数据库)

image-20230710105537024

选中示例数据库, 这样会安装 Oracle 自带的示例数据库, 以供 sql 等的学习. 另一个窗口可以保持默认. 点击下一步:

image-20230710105802683

这里有 4 个选项卡, 分别用于设置: 内存, 大小, 字符集, 以及连接模式.

内存这里可以看到使用了自动内存管理:

image-20230710105926033

大小这里由于采用了默认的数据库模板, 这里无法修改

image-20230710110004467

字符集默认选中的是第一个, 这里我们修改为第二项 AL32UTF8

image-20230710110111078

连接这里默认选中 "专有服务模式", 一般 OLTP 都是使用专有连接, 默认即可:

image-20230710110301253

点击下一步进入创建的配置:

image-20230710110446838

这里有三个选项:

  1. 创建数据库.
  2. 是否将我们的配置保存为模板, 以供下次创建数据库使用.
  3. 是否需要保存创建过程的 脚本 (SQL 语句), 以及保存脚本的位置.

点击下一步进入数据库创建的概要页面, 可以查看整个配置的清单.

image-20230710110629988

2.2 创建数据库

点击下一步进入数据库创建的过程

image-20230710110755018

然后等待安装即可.

安装完成后会展示出结果, 以及密码配置.

image-20230710112044187

这里显示了:

  • 数据库脚本创建成功以及其位置.
  • 模板创建完成.
  • 数据库创建完毕, 详细信息可以在对应位置进行查看.
  • 以及数据库的一些信息.

查看密码管理, 可以看到大部分密码都处于锁定状态, 这个不用修改, 后面使用的时候会进行介绍.

image-20230710112152829

最后点击关闭, 完成数据库的创建.

3. 连接数据库

进入命令行, 使用命令 sqlplus 连接数据库. 该方法采用操作系统的认证方式, 可以直接连接数据库.

sqlplus / as sysdba

该命令的含义是以数据库管理员 (sysdba) 的角色连接并登录数据库:

image-20230710113009056

然后执行 SQL 语句, 查询视图 v$instance 来查看实例名与状态

SELECT INSTANCE_NAME, STATUS FROM v$instance;

注意 SQL 语句以 分号 结尾.

image-20230710113126914

执行 exit 退出.

image-20230710113312489

我们还可以运行 sqlplus, 但不登录. 使用命令:

sqlplus /nolog

image-20230710113410139

此时没有连接到数据库. 如果执行 sql 语句会报错未连接:

image-20230710113616589

使用下面命令连接到数据库

conn / as sysdba

会得到连接完成的提示. 然后再执行 sql 语句:

image-20230710113742858

3.1 安装 rlwrap (未成功)

默认情况下 SQLPlus 无法使用上下键来切换之前输入的 SQL 语句.

因此安装 rlwrap, 然后对 SQLPlus 重新包装 (使用该软件), 即可支持上下键切换之前输入的 SQL 语句了.

但由于不清楚源, 无法下载对应包, 而下载较新的软件后发现缺少相关的依赖软件无法安装成功.

这里将简要整理安装步骤:

  • 视频中使用的软装软件是: rlwrap-0.41-1.1.x86_64.rpm
  • 然后使用安装命令: rpm -ivh rlwrap-0.41-1.1.x86_64.rpm

然后配置环境变量 (修改 .bash_profile), 添加下面别名:

alias sqlplus='rlwrap sqlplus'

3.2 安装 rlwrap (安装了0.42的版本)

image-20230710163617274

首先进入网站 https://pkgs.org/ 搜索 rlwrap

image-20230710163739401

考虑使用的 yum 工具 这里选择 Enterprise Linux 7 的发行版

image-20230710163840385

点进去后, 下拉找到 Download

image-20230710163935782

可以下载安装, 但是会出现各种依赖库的问题 (该系统相对较老). 因此访问其网站: https://dl.fedoraproject.org/pub/epel/ 找寻其他版本:

image-20230710164052637

这里选择了版本 5, 进入后需要导航到另一个站点:

image-20230710164144093

直接进入该站点, 依次点击 5, x86_64, ctrl + f 搜索 rlw, 即可找到:

这个过程找了很久.

image-20230710164420912

下载到本地后, 利用 ftp 软件, 用 root 登录账户, 将其上传到服务器上, 这里使用 ~/Downloads 目录

image-20230710164559466

然后使用登录到 Linux, 使用切换至 root 账户, 转到 ~/Downloads 目录, 执行命令进行安装:

ssh oracle@192.168.56.108
su -
cd Downloads
rpm -ivh rlwrap-0.42-1.el6.x86_64.rpm

image-20230710164851375

3.3 为 sqlplus 设置别名

切换回 oracle 账户.

找到 .bash_profile 文件, 在结尾添加命令:

alias sqlplus='rlwrap sqlplus'

image-20230710165055474

应用该配置后, 再次使用 sqlplus 连接数据库, 即可测试上下键.

image-20230710165232126

4. 安装 PLSQL

PLSQL 是一个客户端, 用于编写处理 SQL 语句

4.1 下载 PLSQL

4.2 下载 Oracle 的驱动

4.3 配置环境变量

  • TNS_ADMIN
  • NLS_LANG

以sys用户登录 (sqlplus / as sysdba) 执行 SELECT userenv('LANGUAGE') from dual;

连接数据库的方法

  1. os 的验证方式
  2. easy connect 方式
    1. sqlplus sys/system@ip:port/sid as sysdba

启动监听器

查看监听器的命令 lsnrctl status

启用监听器 lsnrctl start

停止监听器 lsnrctl stop

启动后看监听器状态依旧是无服务, 需要使用 sqlplus 连接到数据库后, 进行注册 alter system register; 再看监听器状态

使用PLSQL连接, 管理员需要以 SYSDBA 连接, 权限最高, SYSOper 也是管理用户, 但权限地点

查看字符集视图 NLS_DATABASE_PARAMETERS

关闭数据库

在 SQLPlus 中> shutdown immediate

​ > 如果使用 easyconnect 的方式连接, 会报错, 因为是动态注册的

启动数据库, 先进入 SQLPlus

​ 看到 COnnected to an idle instance 说明数据库没有启动/没有实例

​ 在执行 startup 启动数据库

删除数据库

  • 先用 dbca 先创建一个 test
  • 再删除(基本就是下一步下一步, 但是最好记住做了什么, 这样才方便手动删除)
Last Updated:
Contributors: jk