基于centos7安装oracle11g
注:需安装桌面环境
1.安装环境准备
(1)配置yum源并安装依赖(需保证有网。或者使用本地yum,我这里使用的阿里云。)
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
2).清除缓存
yum clean all
yum makecache
yum list
yum install -y binutils compat-libcap1 compat-libstdc+±33 gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc+±devel libaio libaio-devel make sysstat unixODBC-devel pdksh --nodeps
(2)放通端口
firewall-cmd --zone=public --add-port=1521/tcp --permanent
firewall-cmd --reload
2.配置用户和用户组
创建oracle用户并设置密码
useradd oracle
passwd oracle
创建用户组
groupadd oinstall
groupadd dba
修改oracle用户组
usermod -g oinstall -G dba oracle
3.修改内核参数
追加一段内核参数
vim /etc/sysctl.conf
…
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
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
修改文件打开限制,追加一段
vim /etc/security/limits.conf
…
oracle soft nproc 4096
oracle hard nproc 65536
oracle soft nofile 4096
oracle hard nofile 65536
创建oracle安装目录
mkdir -p /u01/app/
chown -R oracle:oinstall /u01/app/
chmod -R 775 /u01/app/
reboot
重启服务器,使limit生效
4.添加环境变量,准备安装
使用oracle用户登陆
vim .bash_profile
#追加下面这段
ORACLE_BASE=/u01/app/oracle
ORACLE_SID=sales
ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
export ORACLE_BASE ORACLE_SID ORACLE_HOME
PATH=PATH
检查主机名能访问不
su - root
Hostname
//查看主机名
vim /etc/hosts
5.开始安装
(1)使用oracle用户上传文件并解压
unzip 压缩包名
(2)安装
exportNLS_LANG=AMERICAN_AMERICA.UTF8
export LC_ALL=C
//解决乱码问题
cd database/
./runInstaller
!](https://img-blog.****img.cn/20200702151958916.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xpZ3VvY2hhb3lh,size_16,color_FFFFFF,t_70)
百分之六十八报错解决
vim /u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk
$(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)
修改为-static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/stdc.a
点击retry重试
报错跳过,又有一个报错
vim /u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk
通过/$(MK_EMAGENT_NMECTL)进行查找
修改为
$(MK_EMAGENT_NMECTL) -lnnz11
点击retry重试问题解决
sh /u01/app/oraInventory/orainstRoot.sh
sh /u01/app/oracle/product/11.2.0/dbhome_1/root.sh
查看是否启动
6.基本命令
su - oracle
//切换到oracle用户且切换到它的环境
snrctl stop
//停止监听
sqlplus / as sysdba
//以DBA身份进入sqlplus
SHUTDOWN IMMEDIATE
//关闭db
lsnrctl status
//查看监听及数据库状态
lsnrctl start
//启动监听
startup
//启动db
查看监听及数据库状态