CentOS7 安装Oracle12c数据库
在centos7上安装oracle是一个比较麻烦的事,在安装前需要做一些服务器的准备工作
我是在虚拟机里测试的所以需要下载centos7的镜像,可以去官网然后找到中国的镜像站用迅雷插件下载速度比较快这里我选择的是64位的,oracle也是64位的
准备一个oracle12c的数据库,因为现在oracle官网改版了不能下载旧版本的了所以我找了好久都没找到,然后在一个网盘里扒拉到了一个12201版本的数据库安装包,想要安装包的可以联系318267433@qq.com
视频连接:
https://www.bilibili.com/video/BV1nh411q74T?share_source=copy_web
服务器配置
1.首先用服务器的root身份安装依赖包(如果直接是root用户登录的就直接执行下边的,如果不是就打开终端先执行 su - root命令然后输入密码密码在终端里是不显示的)
yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaio libaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp
这个操作可以多做几遍没关系确保安装成功了,做完这一步再测试一下看看安装成功了没有
rpm -q binutils compat-libcap1 compat-libstdc++ gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel
如果出现包未安装的提示,请用yum install 包名进行安装。
例如 yum install compat-libstdc++*
2.建立用户和组:
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba,oper oracle
echo "123456" | passwd --stdin oracle #oracle用户的登录密码,后续登录要用,记着。
3.创建安装目录:
mkdir -p /orcl/app/oracle/product/12.1.0/db_1
#创建目录
chown -R oracle:oinstall /orcl/app
#分配用户目录权限
chmod -R 775 /orcl/app #给目录分配权限
上传安装包
这里我用的是winSCP工具上传的
我们把oracle12cLinux版本的安装包上传到
/orcl/app/oracle目录
4.修改内核参数vim /etc/sysctl.conf,添加:(如果没有vim 就用vi编辑器)
fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 4098955264 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 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
改好后,使之生效
sysctl -p
# kernel.shmmax = 4098955264 这个地方因为每个人机器不一样所以填的可能也不一样,到时候看check那一步的时候推荐值是多少再改成多少就行
5.改文件限制:vi /etc/security/limits.conf,添加:
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240
6.以及vi /etc/pam.d/login,添加:
session required pam_limits.so
7.修改ulimit:vi /etc/profile,添加:
if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536a else ulimit -u 16384 -n 65536 fi fi
8.修改环境变量。vi ~oracle/.bash_profile,添加:
ORACLE_BASE=/orcl/app/oracle ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1 ORACLE_SID=orcl export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH=$ORACLE_HOME/bin:$PATH
9.如果你的centos有自带的openjdk就卸载掉没有就不用管
yum remove *openjdk*
再安装正常版本的jdk去oracle官网下载Linux版的jdk8
然后到下载的目录执行
rpm -ivh jdk名字.rpm
例如rpm -ivh jdk-8u144-linux-x64.rpm
10.开放服务器的1521端口
firewall-cmd --zone=public --add-port=1521/tcp --permanent
firewall-cmd --reload
返回success代表成功期间可能会提示输入root密码
做完以上操作之后重启服务器
开始安装oracle12c
- 重启完服务器用oracle这个用户登录服务器(我们在服务器配置的第二步里已经创建了一个名为oracle的用户密码为123456)
- 进入到安装包目录
cd /orcl/app/oracle
- 解压安装包
unzip linuxx64_12201_database.zip
- 进入到解压目录
cd /orcl/app/oracle/database
- 运行安装命令
./runInstaller
安装过程中可能会碰到的问题
1.swap size问题没有检查交换空间
安装数据库所需要的交换空间
问题
1.使用dd命令创建一个swap分区
dd if=/dev/zero of=/home/swap bs=1024 count=16777216
2.格式化刚才创建的分区
mkswap /home/swap
3.再使用swapon命令把这个文件分区变成swap分区
swapon /home/swap
4.为了能够让swap自动挂载,需要修改etc/fstab文件
vim /etc/fstab
# 在文件末尾加上
/home/swap swap swap default 0 0
这样就算重启系统,swap分区也不用手动挂载了
5. 修改/etc/inittab文件
vim /etc/inittab
# 在文件末尾加上
swapon /home/swap
2.kernel.shmmax问题就是在服务器配置的值为他推荐的值
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?