Oracle Linux下安装Oracle11gR2
Linux上Oracle11g R2安装及配置
一. 安装环境准备
- 1. 环境说明
Linux服务器系统:Oracle Linux Release 6 Update 2 (64bit),先安装好。
Oracle服务器:Oracle11gR2 (64bit)
- 2. 修改操作系统核心参数
在Root用户下执行以下步骤:
1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件
输入命令:vi /etc/security/limits.conf,按i键进入编辑模式,加入内容。
oracle soft nproc 4096 |
编辑完成后按Esc键,输入“:wq”存盘退出
2)修改/etc/pam.d/login 文件,输入命令:vi /etc/pam.d/login,按i键进入编辑模式,将下列内容加入该文件。
session
required /lib/security/pam_limits.so |
编辑完成后按Esc键,输入“:wq”存盘退出
3)修改linux内核文件,/etc/sysctl.conf,输入命令: vi /etc/sysctl.conf ,按i键进入编辑模式,将下列内容加入该文件
kernel.shmall=4294967296 (已经存在) fs.file-max=6815744
|
编辑完成后按Esc键,输入“:wq”存盘退出
各参数意义如下:
(1)shmmax:该参数定义了共享内存段的最大尺寸(以字节为单位),通常将其设置为2G或更大。
(2)shmmni:用于设置系统范围内共享内存段的最大数量。默认值是 4096 ,通常不需要更改。
(3)shmall:该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,如系统自动生成则不需要修改。
(4)sem:该参数表示设置的信号量,当oracle DB初始化参数文件中PROCESSES参数设置较大时,需要调整SEM设置
如:kernel.sem = 250 32000
100 128各数据段含义如下。
SEMMSL SEMMNS SEMOPM SEMMNI
SEMMSL应该设置为服务器中各个实例中最大的PROCESSES参数+10,如当最大的PROCESSES参数为5000时,SEMMSL应设置为5010。
SEMMNS参数应设置为SEMMSL*SEMMNI,如例SEMMSL为5010,SEMMNS参数应为(5010*128)=641280。
SEMOPM参数应设置与SEMMSL参数相同,接上例此处应设置为5010
(5)file-max:该参数表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量。
(6)rmem_default — 默认的TCP/IP接收缓冲大小
(7)rmem_max — 最大的TCP/IP接收窗口的大小
(8)wmem_default — 默认的TCP/IP发送窗口大小
(9)wmem_max — 最大的TCP/IP发送窗口的大小
4)要使 /etc/sysctl.conf 更改立即生效,执行以下命令:
# sysctl -p |
5)编辑 /etc/profile ,输入命令:vi /etc/profile,按i键进入编辑模式,加入下列内容。
if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi |
编辑完成后按Esc键,输入“:wq”存盘退出
6)创建用户和组。
创建组: groupadd oinstall 创建Oracle用户和密码: useradd -g oinstall -G dba oracle passwd oracle 然后会让你输入密码,密码任意输入2次,但必须保持一致,回车确认 |
7)创建数据库软件工作目录和数据文件存放目录,根据自己的情况来定
输入命令: mkdir /home/oracle/app mkdir /home/oracle/app/oraInventory mkdir /home/oracle/app/oracle mkdir /home/oracle/app/oracle/product |
8)更改目录属主为Oracle用户所有,输入命令:
chown -R oracle:oinstall /home/oracle/app chown -R oracle:oinstall /home |
9)配置oracle用户的环境变量,要在oracle用户下进行操作。
输入:
# su oracle
$ vi /home/oracle/.bash_profile
按i进入编辑模式,增加以下内容:
export EDITOR=vi export ORACLE_SID=doea5dw 实例名 export ORACLE_BASE=/home/oracle/app export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1 export INVENTORY_LOCATION=/home/oracle/app/oraInventory export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib export NLS_LANG="American_america.zhs16gbk" export NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss' export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin umask 022 export JAVA_HOME=/usr/local/development/jdk1.7.0_21 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH |
编辑完成后按Esc键,输入“:wq”存盘退出
10.root用户下, 编辑/etc/hosts文件,输入IP地址和主机名
[root@A5BI-1 //]# vi /etc/hosts
127.0.0.1 localhost.localdomain localhost
#::1 localhost6.localdomain6 localhost6
192.168.100.31 A5BI-1.a5test.com
127.0.0.1 A5BI-1
二.安装oracle软件
- 1. 安装准备
1)退出系统以Oracle用户登陆。
2)首先将Oracle软件安装包复制到linux系统中的一个目录下,确保Oracle用户对此目录有足够权限。
3)打开一个终端,运行unzip命令解压oracle软件安装包。
输入命令: unzip linux.x64_11gR2_database_1of2.zip unzip linux.x64_11gR2_database_2of2.zip |
解压完成后生成新目录database,进入解压后的database目录查看。
输入命令: cd /database ls
|
- 2. 开始安装:
由于本次存储采用FILESYSTEM,没有用ASM磁盘组,所以不配置GRID,直接安装ORACLE软件。执行安装要在Oracle用户下进行:
[root@A5BI-1 //]# su oracle
[oracle@A5BI-1 database]$ cd /database
[oracle@A5BI-1 database]$ ./runInstaller
安装报错,如下图
解决:
Su ---切换为root用户
Xhost +SI:localuser:oracle ---设置本地用户可视化安装
Su oracle ---切换到oracle用户重新安装
邮箱也可不填写,去掉勾选
选择只安装软件
选择安装单实例还是RAC环境,此处选择单实例
选择语言,English
选择安装版本,选择Enterprise Edition,点击select option,选择要安装的组件
输入ORACLE_BASE和ORACLE_HOME路径,确保oracle用户对此目录有访问权限
OSDBA组用户被授予sysdba权限,OSOPER组用户被授予sysoper权限
检测安装环境
安装缺失的软件:
装载iso系统文件到光驱,在虚拟机控制面板上操作。从linux安装ISO中查找所缺的包,进行安装,全部都安装好,再次执行安装过程,就通过了。
由于本次linux系统版本高于数据库版本,我们忽略这些错误,选择lgnore All
点击save response file 保存安装过程到response文件,用于以后静默安装
开始安装
安装快完成时,系统会提示你需要用root权限执行2个shell脚本。按照其提示的路径执行/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh
和 /home/oracle/oraInventory/orainstRoot.sh,安装完成会有提示信息。
执行命令:
$ su
# cd /home/oracle/app/oracle/product/11.2.0/dbhome_1
# sh root.sh
提示:
Running Oracle 11g root.sh script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /home/oracle/app/oracle/product/11.2.0/dbhome_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
执行命令:
cd /home/oracle/app/oraInventory
sh orainstRoot.sh
提示:
Changing permissions of /home/oracle/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /home/oracle/oraInventory to oinstall.
The execution of the script is complete.
安装完成,Close结束
三.创建数据库实例
在oracle用户中,新开启一个终端,输入命令:
[orcle@A5BI-1 //] $ dbca
Next
创建一数据库
选择数据库类型
输入全局数据库名和实例名
由于未安装EM,此处选择不使用EM管理数据库,去掉勾选
设置管理员密码11g默认密码至少包含一个大写字母、一个小写字母和一个数字,且为8个字符。可以重新设置或者直接Next
由于未使用ASM,此处选择file system,并选择OMF管理数据库文件
不指定Specify Flash Recovery Area(快速恢复和归档)
去掉不常用的模块
可选用Automatic Memory Management,也可不选用
当选用Automatic Memory Management时只需要指定sga和pga总大小,oracle将自动管理内存。分配的内存大小与/dev/shm下空间大小相匹配,如果空间不足要扩大tmpfs文件系统大小。
查看/dev/shm空间大小:
命令:df –TH
设置为/dev/shm空间大小,如果够用不用修改。
命令:mount -t tmpfs -o size=7300m tmpfs /dev/shm
选择字符集点击Next
保持默认值点击Next
点击Finish进行安装
经过漫长的等待,当看到此界面,说明oracle建库完成,点击0k,点击Exit
四.配置监听及本地网络服务
在oracle用户的图形界面中,新开启一个终端,创建监听服务(充当oracle服务器,让别的客户端连接本oracle服务器)输入命令:
$ netca
输入oracle服务器的ip地址
选中测试
点击change Login 输入所连接oracle服务器的其中某一个用户名和密码,点击OK
此界面测试成功(如不成功,请查看网络是否畅通,所连接oracle服务器,监听是否启动)
为你所设置的本地网络服务名起个名字,Next
然后点击Next
这样oracle服务器安装配置基本就完成了。
第一步:登陆
root登陆之后切换到oracle用户上,输入
su oracle
第二步:连接
在oracle用户下,输入
sqlplus /nolog
第三步:使用管理员权限 ,输入
connect /as sysdba
第四步:启动/关闭服务,输入
startup
第五步:如果是启动服务,要开启监听
退出sqlplus模式,输入 :exit 或者ctrl+d 退出
开启监听
lsnrctl start
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类