实在不想写这种无脑的教程,但是oracle的麻烦程度、官网文档的垃圾程度,真是让我这个小白上手太难了!
实在不想写这种无脑的教程,但是oracle的麻烦程度、官网文档的垃圾程度,真是让我这个小白上手太难了!
先展示一下官网的垃圾文档
本文参考文章
- CentOS 8安装最新Oracle19c数据库
- yum 安装时出现 Couldn t open file /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
- CentOS 8 搭建 oracle19C (安装与配置)全过程
- 解决Oracle 19c服务端中文显示问号的方法-HTMer
- java.sql.SQLException: ORA-28040: 没有匹配的验证协议(odbc6.jar,数据库用的是orcal12)
- https://community.oracle.com/tech/developers/discussion/4288833/ora-65096-invalid-common-user-or-role-name
- Oracle-报错:ORA-12541:TNS:no listener_
- ORA-01109:数据库未打开(解决)_
- oracle 12C的新特性-CDB和PDB
- oracle12c的CDB与PDB
环境
服务器:CentOS8.4
数据库:oracle19c
下载
下载两个,一个preinstall,跟一个oracle
| |

下载Oracle19CDatabase Software Downloads | Oracle
密钥
GPG在Linux上的应用主要是实现官方发布的包的签名机制
GPG分为公钥及私钥
公钥:顾名思意,即可共享的密钥,主要用于验证私钥加密的数据及签名要发送给私钥方的数据
私钥:由本地保留的密钥,用于签名本地数据及验证用公钥签名的数据
实现原理(以Oralce签名为例):
Oralce在发布其官方的RPM包时(如本地RHEL光盘及FTP空间包),会提供一个GPG密钥文件,即所谓的公钥
用户下载安装这个RPM包时,引入Oralce官方的这个RPM GPG公钥,用来验证RPM包是不是Oralce官方签名的
下载密钥
| |
如果没有密钥,会报错。

安装
安装oracle所需要的依赖和仓库
| |
执行命令
| |
会自动安装oracle需要的依赖。

初始化
创建自己的CDB初始化配置文件
复制一份Oracle样本配置,并打开
| |
主要是修改环境变量配置,如CDB,PDB等。
| |
复制配置文件
| |
因为只有一个Oracle SID实例,不会冲突,所以这里不改端口配置等。
配置并创建Oracle SID实例
配置oracle
| |
如果看到以下这句话,就安装完成了。

连接
初次连接
安装成功oracle之后,会在主机上自动创建一个oracle账户。
修改oracle用户密码
| |
切换账户
| |
加上-表示打印出上次操作的记录。
exit退回到root用户,配置环境变量
| |
添加以下内容,至于NLS_LANG是为了避免控制台英文、中文输出?号。
| |
刷新环境变量
| |
配置sqlnet.ora
| |
添加以下内容,这是表示允许8以上版本的连接工具,进行远程连接。
| |
使用sysdba身份打开控制台
| |
连接sysdba
| |
重启后启动数据库
重启后连接的操作跟上面一样,只不过要多两步
- 启动oracle监听
- 启动oracle
启动监听
| |

启动数据库
| |

关闭数据库
| |
添加用户
自从oracle12c开始,oracle引入了CDB和PDB的特性。
CDB叫Container Database,数据库容器;PDB叫Pluggable Database,可插拔数据库。CDB下面有多个PDB
添加CDB用户,也就是通用用户,需要在名称中加C##
| |
授权
| |
或者这种方式授权
| |
Connect 角色,是授予最终用户的典型权利,最基本的权利,能够连接到ORACLE数据库中,并在对其他用户的表有访问权限时,做SELECT、UPDATE、INSERTT等操作。
Alter session--修改会话;
Create cluster--建立聚簇;
Create database link--建立数据库连接;
Create sequence--建立序列;
Create session--建立会话;
Create synonym--建立同义词;
Create view--建立视图。
Resource 角色,是授予开发人员的,能在自己的方案中创建表、序列、视图等。
Create cluster--建立聚簇;
Create procedure--建立过程;
Create sequence—建立序列;
Create table--建表;
Create trigger--建立促发器;
Create type--建立类型。
DBA角色,是授予系统管理员的,拥有该角色的用户就能成为系统管理员了,它拥有所有的系统权限。
创建PDB用户,需要先切换到PDB下,再创建用户。
| |
Navicat连接

