系统要求和准备工作
在安装Oracle数据库之前,需要确保系统满足最低硬件和软件要求。
硬件要求
- 内存:至少4GB RAM(推荐8GB或更高)
- 磁盘空间 :
- 企业版:至少6.5GB
- 标准版:至少6GB
- 临时安装空间:1GB
- 显示器:1024×768分辨率或更高
软件要求
- 操作系统 :
- Windows Server 2016/2019/2022
- Red Hat Enterprise Linux 7/8
- Oracle Linux 7/8
- SUSE Linux Enterprise Server 12/15
- 内核参数 (Linux):
- semmsl=250
- semmns=32000
- semopm=100
- semmni=128
安装前准备
- 创建专用的Oracle用户和组
- 配置系统环境变量
- 关闭防火墙和杀毒软件(临时)
- 下载Oracle安装介质
2.2 Windows环境下Oracle安装
安装步骤
-
解压安装文件
bash# 解压下载的zip文件到指定目录 -
运行安装程序
- 以管理员身份运行setup.exe
- 选择"创建和配置数据库"
-
配置安全更新
- 可选择跳过更新注册
-
选择安装选项
- 创建和配置数据库
- 系统类:桌面类或服务器类
-
典型安装配置
- Oracle基目录:C:\app\username
- 数据库文件位置:C:\app\username\product\version\dbhome
- 全局数据库名:orcl
- 管理员密码:设置SYS和SYSTEM用户密码
-
先决条件检查
- 系统会自动检查环境
- 如有问题需要解决后再继续
-
概要信息
- 确认安装配置信息
- 点击"完成"开始安装
-
安装进度
- 等待安装过程完成
- 自动执行配置脚本
安装后验证
sql
-- 连接到数据库验证安装
sqlplus / as sysdba
-- 查看数据库状态
SELECT status FROM v$instance;
-- 查看数据库版本
SELECT * FROM v$version;
2.3 Linux环境下Oracle安装
系统配置
-
创建用户和组
bash# 创建oinstall组 groupadd oinstall # 创建dba组 groupadd dba # 创建oracle用户 useradd -g oinstall -G dba oracle # 设置密码 passwd oracle -
配置内核参数
bash# 编辑/etc/sysctl.conf文件 vi /etc/sysctl.conf # 添加以下参数 kernel.shmall = 2097152 kernel.shmmax = 4294967295 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 6815744 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 -
应用内核参数
bash# 使配置生效 /sbin/sysctl -p
安装步骤
-
解压安装文件
bash# 切换到oracle用户 su - oracle # 解压安装文件 unzip linuxamd64_19c_database.zip -
运行安装程序
bash# 进入安装目录 cd database # 运行安装程序 ./runInstaller -
图形化安装界面
- 选择"创建和配置数据库"
- 选择"桌面类"或"服务器类"
- 配置Oracle基目录和软件位置
- 设置数据库标识符和密码
- 执行先决条件检查
- 确认配置并开始安装
-
执行配置脚本
- 安装完成后,以root用户执行提示的脚本
bash# 以root身份执行 /oraInventory/orainstRoot.sh /u01/app/oracle/product/19.0.0/dbhome_1/root.sh
2.4 数据库创建和配置
使用DBCA创建数据库
-
启动DBCA
bash# 在命令行中运行 dbca -
创建数据库向导
- 选择"创建数据库"
- 选择"高级配置"
- 输入全局数据库名和SID
- 选择数据库模板(通用或数据仓库)
-
配置数据库选项
- 启用企业管理器
- 配置字符集(推荐AL32UTF8)
- 设置管理员密码
-
存储配置
- 选择文件系统或ASM存储
- 配置快速恢复区
-
初始化参数
- 内存管理选项
- 进程数配置
- 字符集设置
手动创建数据库
sql
-- 1. 设置环境变量
export ORACLE_SID=orcl
-- 2. 启动实例到nomount状态
sqlplus / as sysdba
STARTUP NOMOUNT
-- 3. 创建数据库
CREATE DATABASE orcl
USER SYS IDENTIFIED BY password
USER SYSTEM IDENTIFIED BY password
LOGFILE GROUP 1 ('/u01/app/oracle/oradata/orcl/redo01.log') SIZE 100M,
GROUP 2 ('/u01/app/oracle/oradata/orcl/redo02.log') SIZE 100M,
GROUP 3 ('/u01/app/oracle/oradata/orcl/redo03.log') SIZE 100M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
CHARACTER SET AL32UTF8
NATIONAL CHARACTER SET AL16UTF16
EXTENT MANAGEMENT LOCAL
DATAFILE '/u01/app/oracle/oradata/orcl/system01.dbf'
SIZE 325M REUSE
SYSAUX DATAFILE '/u01/app/oracle/oradata/orcl/sysaux01.dbf'
SIZE 325M REUSE
DEFAULT TABLESPACE users
DATAFILE '/u01/app/oracle/oradata/orcl/users01.dbf'
SIZE 20M REUSE
DEFAULT TEMPORARY TABLESPACE temp
TEMPFILE '/u01/app/oracle/oradata/orcl/temp01.dbf'
SIZE 20M REUSE
UNDO TABLESPACE undotbs1
DATAFILE '/u01/app/oracle/oradata/orcl/undotbs01.dbf'
SIZE 200M REUSE;
-- 4. 运行脚本创建数据字典
@$ORACLE_HOME/rdbms/admin/catalog.sql
@$ORACLE_HOME/rdbms/admin/catproc.sql
@$ORACLE_HOME/sqlplus/admin/pupbld.sql
2.5 Oracle网络配置
监听器配置
-
启动Net Configuration Assistant
bashnetca -
配置监听器
- 选择"监听程序配置"
- 添加或配置监听器
- 设置监听端口(默认1521)
- 选择协议(TCP)
-
手动配置监听器
bash# 编辑listener.ora文件 vi $ORACLE_HOME/network/admin/listener.ora # 示例配置 LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) ) ) SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = orcl) (ORACLE_HOME = /u01/app/oracle/product/19.0.0/dbhome_1) ) )
客户端连接配置
-
配置tnsnames.ora
bash# 编辑tnsnames.ora文件 vi $ORACLE_HOME/network/admin/tnsnames.ora # 示例配置 ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) -
测试连接
bash# 使用tnsping测试网络连接 tnsping orcl # 使用sqlplus连接数据库 sqlplus system/password@orcl
2.6 安装后配置和优化
启动和停止数据库
bash
# 启动数据库
sqlplus / as sysdba
STARTUP
# 停止数据库
SHUTDOWN IMMEDIATE
# 启动监听器
lsnrctl start
# 停止监听器
lsnrctl stop
创建启动脚本
bash
# 创建数据库启动脚本
vi /home/oracle/startdb.sh
#!/bin/bash
export ORACLE_SID=orcl
sqlplus / as sysdba << EOF
STARTUP
EXIT
EOF
lsnrctl start
# 创建数据库停止脚本
vi /home/oracle/stopdb.sh
#!/bin/bash
lsnrctl stop
export ORACLE_SID=orcl
sqlplus / as sysdba << EOF
SHUTDOWN IMMEDIATE
EXIT
EOF
常见配置参数
-
内存配置
sql-- 查看SGA大小 SHOW PARAMETER sga; -- 修改SGA大小 ALTER SYSTEM SET sga_max_size=2G SCOPE=SPFILE; ALTER SYSTEM SET sga_target=1G SCOPE=BOTH; -
进程配置
sql-- 查看进程数 SHOW PARAMETER processes; -- 修改进程数 ALTER SYSTEM SET processes=300 SCOPE=SPFILE;
2.7 本章小结
本章详细介绍了Oracle数据库在Windows和Linux环境下的安装过程,包括系统要求、安装步骤、数据库创建和网络配置等内容。掌握这些技能是使用Oracle数据库的基础。
练习题
- 列出Oracle数据库安装的系统要求
- 描述在Linux环境下创建Oracle用户和组的步骤
- 解释如何使用DBCA创建数据库
- 配置监听器和客户端连接的步骤
- 编写一个简单的数据库启动和停止脚本