在Centos7上安装Oracle
环境:
硬盘30G;2G RAM;Centos7;Oracle 11G;
1.创建组和用户
[zzd@localhost ~]$ su root #切换到root
Password:
[root@localhost]# groupadd oinstall #创建用户组oinstall
[root@localhost]# groupadd dba #创建用户组dba
[root@localhost]# useradd -g oinstall -G dba -m oracle #创建oracle用户,并加入到oinstall和dba用户组
[root@localhost]# passwd oracle #设置用户oracle的登陆密码,不设置密码,在CentOS的图形登陆界面没法登陆
Changing password for user oracle.
New password: # 密码
BAD PASSWORD: The password is shorter than characters
Retype new password: # 确认密码
passwd: all authentication tokens updated successfully.
[root@localhost]# id oracle # 查看新建的oracle用户
2.解压安装包
[root@localhost]# unzip linux.x64_11gR2_database_1of2.zip [root@localhostl]# unzip linux.x64_11gR2_database_2of2.zip
解压出来的database文件夹,放到oracle的用户目录下:
mv ./database /home/oracle/
设置文件夹权限:
chown -R oracle:oinstall /home/oracle/database
3.创建安装目录
[root@localhost]# cd /. #进入根目录
[root@localhost]# mkdir -p /data/oracle #oracle数据库安装目录
[root@localhost]# mkdir -p /data/oraInventory #oracle数据库配置文件目录
[root@localhost]# cd /data
[root@localhost data]# ls #创建完毕检查一下(强迫症)
database oracle oraInventory
[root@localhost data]# chown -R oracle:oinstall /data/oracle #设置目录所有者为oinstall用户组的oracle用户
[root@localhost data]# chown -R oracle:oinstall /data/oraInventory
[root@localhost data]#
4.修改OS系统标识(oracle默认不支持CentOS系统安装,但是centos其实就是redhat)
[root@localhost data]# vi /etc/redhat-release
[root@localhost data]# cat /etc/redhat-release
redhat-
5.安装依赖包
[root@localhost data]# yum -y install binutils* compat-libcap1* compat-libstdc++* gcc* gcc-c++* glibc* glibc-devel* ksh* libaio* libaio-devel* libgcc* libstdc++* libstdc++-devel* libXi* libXtst* make* sysstat* elfutils* unixODBC*
6.关闭防火墙
[root@localhost data]# systemctl stop firewalld.service #关闭防火墙
[root@localhost data]# systemctl status firewalld.service #查看防火墙状态(已关闭)
[root@localhost data]# systemctl disable firewalld.service #禁止使用防火墙(重启也是禁止的)
7.关闭selinux
[root@localhost data]# vi /etc/selinux/config
修改为SELINUX=disabled
8.修改内核参数
[root@localhost data]# vi /etc/sysctl.conf
在最后添加:
net.ipv4.icmp_echo_ignore_broadcasts =
net.ipv4.conf.all.rp_filter =
fs.file-max =
fs.aio-max-nr =
kernel.shmall =
kernel.shmmax =
kernel.shmmni =
kernel.sem =
net.ipv4.ip_local_port_range =
net.core.rmem_default =
net.core.rmem_max=
net.core.wmem_default=
net.core.wmem_max=
内核参数需要注意,shmall 和shmmax 的值由服务器内存决定。(不过这个参数设置博主我现在也是一知半解,没完全搞明白,查了半天意思如下:)
kernel.shmall :
该参数控制可以使用的共享内存的总页数。Linux共享内存页大小为4KB,共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需要共享内存页数是16GB/4KB=16777216KB/4KB=4194304(页),也就是64Bit系统下16GB物理内存,设置kernel.shmall = 4194304 符合要求。
kernel.shmmax:
是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。64位linux系统:可取的最大值为物理内存值-1byte,建议值为多于物理内存的一半,例如,如果为16GB物理内存,可取1610241024*1024-1=17179869183。
kernel.shmmni:
该参数是共享内存段的最大数量。shmmni缺省值4096,一般肯定是够用了。
kernel.sem = 250 32000 100 128 的意思是:
250是参数semmsl的值,表示一个信号量集合中能够包含的信号量最大数目。
32000是参数semmns的值,表示系统内可允许的信号量最大数目。
100是参数semopm的值,表示单个semopm()调用在一个信号量集合上可以执行的操作数量。
128是参数semmni的值,表示系统信号量集合总数。
9.对oracle用户设置限制
()vi /etc/security/limits.conf
添加以下内容:
* soft nproc
* hard nproc
* soft nofile
* hard nofile
()修改/etc/pam.d/login 文件,vi /etc/pam.d/login
添加:
session required /lib64/security/pam_limits.so
session required pam_limits.so
()编辑 /etc/profile ,vi /etc/profile
添加:
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p
ulimit -n
else
ulimit -u -n
fi
fi
10.配置环境变量
export ORACLE_BASE=/data/oracle #oracle数据库安装目录
export ORACLE_HOME=$ORACLE_BASE/product/11g #oracle数据库路径
export ORACLE_SID=orcl #oracle启动数据库实例名
export ORACLE_UNQNAME=orcl
export ORACLE_TERM=xterm #xterm窗口模式安装
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH #添加系统环境变量
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib #添加系统环境变量
export LANG=C #防止安装过程出现乱码
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致
使用户的环境变量配置立即生效
[root@localhost data]# source /home/oracle/.bash_profile
11.修改交换空间的大小
https://jingyan.baidu.com/article/5d368d1eb6e1133f60c057ca.html
12.开始安装
使用oracle用户登陆,到database文件夹下直接执行./runInstaller
13.正常会打开图形化安装界面,按自己意愿进行安装和配置
参考:
https://www.cnblogs.com/mmzs/p/9033112.html
https://www.cnblogs.com/muhehe/p/7816808.html
https://www.cnblogs.com/caoyt/p/9714803.html
https://www.cnblogs.com/czz-hl/p/9590759.html
https://blog.csdn.net/m0_37814112/article/details/77373863
https://www.cnblogs.com/guzhanyu/p/7943728.html
https://blog.csdn.net/u010383786/article/details/55822996
最新文章
- nodejs的child_process同步异步
- MySQL 5.6 新参数对binlog日志量的优化
- java基础1_Java数据类型
- css中white-space的值pre-wrap
- Android学习笔记(五)——活动的生命周期
- D7控件\dw_cd_VirtualTreeview_v4.5.2\Demos\Advanced---TVirtualStringTree用法
- jqGrid通用编辑规则
- QT对话框模式与非模式
- excel数据通过构建sql语句导入到数据库中
- Android中的sp与wp
- the server responded with a status of 404 (Not Found)
- struts1.3设置编码三种方法
- Excel异常Cannot get a text value from a numeric cell
- json的引号之伤
- spring boot / cloud (八) 使用RestTemplate来构建远程调用服务
- iOS Xcode及模拟器SDK下载
- Vijos P1116 一元三次方程求解【多解,暴力,二分】
- DHCP服务器 出现的故障
- TCPWrap的使用配置
- Qt ------ window下工程项目打包成一个exe程序
热门文章
- jsqlparser和calcite和druid功能对比
- vc++ 监控指定路径下文件变化
- 洛谷$P5330\ [SNOI2019]$数论 数论
- $ZOJ\ 2432\ Greatest\ Common\ Increasing\ Subsequence$
- oracle中使用pl/sql进行的文件读写操作
- Oracle数据库连接工具的使用(三)
- AcWing 247. 亚特兰蒂斯 | 扫描线
- 51nod 1086背包问题V2 (完全背包模板题)
- matplotlib绘制符合论文要求的图片
- Redis系列之----Redis的两种持久化机制(RDB和AOF)