How to gracefully install Oracle Database with its components?
1.1 Before Installation
Oracle Database 21C 下载地址:https://www.oracle.com/database/technologies/oracle21c-windows-downloads.html
SQL Developer 23.1 下载地址:https://www.oracle.com/database/sqldeveloper/technologies/download/#sqldev-install-windows
下载需要先注册Oracle账号(注册后也可以免费下载JDK与JRE开发环境)
*Sql Developer有两个版本,当本机JDK环境不是JDK11时可下载Windows 64-bit with JDK 11 included
1.2 Installation
需要注意的点:
Oracle Database 21C:
全局数据库名称:orcl
字符集:GBK16
一定要记住注册时的主账户用户名以及密码
Sql Developer 23.1:注意链接时的密码和账户对应;当创建的账户无法连接的时候可以直接使用SYSDBA类型账户进行数据库连接,用户名为SYS,密码为安装Database 21C时的主用户密码。
安装过程:
建立文件夹路径如图:
将下载好的WINDOWS.X64_213000_db_home
文件在../Oracle/home
文件夹内解压后删除。
点击setup.exe
,进入安装程序。安装选项按照后面的图示进行。
*使用虚拟账户:
根目录选择刚才创建的../Oracle/base
。
设定系统变量:
字段 | 值 |
---|---|
ORACLE_HOME | 刚才的home文件夹绝对路径( E:\Oracle\home) |
TNS_ADMIN | %ORACLE_HOME%\network\admin |
PATH | 将原有的oracle改为%ORACLE_HOME%\bin |
1.3 Database Configuration
打开Database Configuration Assistant
.按照图示配置数据库信息:
这一步之后,已经可以正常访问数据库了:
*SqlPlus访问:**
1.4 Net Configuration
以管理员身份运行Net Configuration Assistant
,选择添加监听程序。
协议选择TCP,端口选择1521(默认端口).
配置成功后重新打开该软件,选择本地网络服务名配置。服务名填写你需要连接的数据库名,协议选择TCP,主机名127.0.0.1(localhost),端口号为1521.
测试连接时用户名填写system(这是因为此时登录用户的分类为default,使用SYS登录会被拒绝),密码填写数据库注册时的密码。提示连接测试成功。
1.5 Local Access
Sql*Plus:
登录命令:
sqlplus system/*****@orcl; //以管理员身份登录
sqlplus / as sysdba //以管理员身份登录整个实例
sqlplus /@(databaseName) as sysdba;//管理员身份启动某个数据库实例
其他命令:
show parameter name; //查看当前登录数据库的参数配置
select name from v$database; //查看实例名称
select * from user_tables;
SELECT * FROM dba_tables;
//访问所有数据库表
SELECT table_name FROM user_tables; //输出所有表名
DESC (tableName); //显示某个表的详细描述信息
Sql Developer:
在连接中直接添加服务器名,注意下方的SID也要修改。使用SYSDBA角色登录。
登陆后可以直接在DBA选项中添加DBA视图:
在配置TNS相关的环境变量和监听程序之后,也可以在SQL developer中进行TNS连接或进行远程连接。
Oracle EM
通过Database Configuration Assistant
可以打开Oracle EM功能并设置开放的监听端口:
完成后输入最后程序提供的网站即可成功访问:
由于本地数据库的证书并不合法,可能会出现浏览器拒绝访问的情况。此时需要更换浏览器,目前Oracle 21c的EMshell支持Edge浏览器访问。
修改https证书限制:
管理员权限进入cmd输入:
certutil -setreg chain\EnableWeakSignatureFlags 8
8.6 TroubleShooting
在安装过程中出现了一些问题,主要集中在可添加数据库
无法进行操作。
事实上SQLPLUS提示orclpdb不存在并不一定代表orclpdb不存在在,只能说明sqlplus无法连接orclpdb数据库
Oracle数据库中的PDB(Pluggable Database,可插拔数据库)是一种新型的数据库概念,引入PDB可以让多个数据库共享同一个物理环境。相比于传统的多个数据库之间需要独立管理的方式,PDB将多个数据库整合在一起,达到了更高的资源共享效率。
当出现这种情况时,可以考虑从sqlplus入手检测orclpdb数据库的具体状态
SELECT name, open_mode FROM v$pdbs; //检测pdb数据库状态
ALTER PLUGGABLE DATABASE OPEN;//当状态为mounted时以此命令启动
ALTER PLUGGABLE DATABASE MOUNT;//当状态为unmounted时以此命令先挂载再OPEN
SELECT name, pdb_id FROM dba_pdbs; //确定pdb数据库是否存在
DROP PLUGGABLE DATABASE INCLUDING DATAFILES;//删除异常状态的pdb数据库
SELECT name FROM v$datafile WHERE name LIKE ‘%%’;//检查pdb数据文件的状态
ALTER DATABASE DATAFILE ” ONLINE;//对异常数据文件进行修复
//设置pdb数据库自动启动
SELECT con_id, property_name, property_value FROM database_properties WHERE property_name LIKE ‘%OPEN_MODE%’;//状态检测
ALTER PLUGGABLE DATABASE SAVE STATE;
ALTER PLUGGABLE DATABASE AUTO_OPEN;
Comments NOTHING