oracle install step by step
2021-8-13 admin 数据库
概述: oracle 11g2 11.04 + centos 7.9
oracle 11g2下载文件 http://xxx.xxx.xxx.x7:9090/soft/oracle_11g2_install.zip
#修改主机名
hostnamectl set-hostname oatestdb
echo "192.168.40.21 oracledb oatestdb.xxxx.com" >> /etc/hosts
#安装GCC组件
yum install -y binutils* compat-libstdc* elfutils-libelf* gcc* glibc* ksh* libaio* libgcc* libstdc* make* sysstat* libXp* glibc-kernheaders
检查组件安装进展
rpm -q --queryformat %-{name}-%{version}-%{release}-%{arch}"\n" \ compat-libstdc++-33 glibc-kernheaders glibc-headers libaio libgcc glibc-devel xorg-x11-deprecated-libs
yum -y install compat-libstdc++-33 glibc-kernheaders glibc-headers-2.17-324.el7_9-x86_64libaio-0.3.109-13.el7-x86_64libgcc-4.8.5-44.el7-x86_64 glibc-devel-2.17-324.el7_9-x86_64 xorg-x11-deprecated-libs libstdc++.so.5
142 yum groupinstall "GNOME Desktop" "Graphical Administration Tools"
#更新源文件
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
yum makecache
#安装性能检测组件
yum install -y iotop iftop nload unzip
iotop -o
#扩展磁盘
91 fdisk /dev/vdb
92 fdisk
93 fdisk -l
94 lsblk
95 vgdisplay
96 vgextend centos /vdb/vdb1
97 vgextend centos /dev/vdb1
98 vgdisplay
99 lsblk
100 lvdisplay
101 lvextend -l +100%FREE /dev/centos/home
102 xfs_growfs /dev/centos/home
103 df -Th
104 lsblk
#安装远程组件
108 yum install tigervnc tigervnc-server -y
109 vim /etc/sysconfig/vncservers
110 yum install vim -y
111 vim /etc/sysconfig/vncservers
#优化性能参数
112 vim /etc/sysctl.conf
fs.aio-max-nr=1048576
# 限制并发未完成的请求,建议10485760
fs.file-max=6815744
# 系统中所允许的文件句柄最大数目,也就是可以打开最多的文件数量,oracle官方推荐
kernel.shmall=4294967296
# 控制共享内存页数,建议大小4294967296 控制最大页面内最大的共享内存段,该参数表示系统一次可以使用的共享内存总
量(以页为单位),通常不需要修改。
kernel.shmmax=4294967296
# 单个共享内存段的最大值,建议取内存大小减半 控制最大的共享段最大使用尺寸,以字节为单位,对于oracle来说
,通常将其设置为物理内存的一半及以上。
kernel.shmmni=4096
# 共享内存段的最大数量,建议4096 这个内核参数用于设置系统范围内共享内存段的最大数量。
该参数的默认值是 4096 。通常不需要更改。
kernel.sem=250 32000 100 128
# 1、信号集容纳最大信号数量 2、所有信号的最大数量 3、调用单个信号集中最大信号数量 4、信号集的最大值 建议值5010 641280 5010 128
net.ipv4.ip_local_port_range=9000 65500
# 系统开放端口范围 建议9000-65500
net.core.rmem_default=262144
# 接收套接字缓冲区大小的默认值,建议262144
net.core.rmem_max=4194304
# 接收套接字缓冲区大小的最大值,建议4194304
net.core.wmem_default=262144
# 发送套接字缓冲区大小的默认值,建议252144
net.core.wmem_max=1048586
# 发送套接字缓冲区大小的最大值,建议1048586
#panic_on_oops=1
sysctl -p
使参数生效
122 vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
124 vi /etc/profile
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2/db
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE SID=test01
export PATH=$PATH:$ORACLE_HOME/bin:.
123 vi /etc/pam.d/login
session required
pam_limits.so
#增加帐号与群组
116 groupadd oinstall
117 groupadd dba
118 groupadd oper
119 useradd -g oinstall -G dba,oper oracle
120 passwd oracle
121 vim /etc/security/limits.conf
#swapfree error
dd if=/dev/zero of=swapfree bs=64k count=65515 #增加4G swapfree 增加2G修改bs=32k
mkswap swapfree
swapon swapfree
#安装至86%报错 Error in invoking target ‘agent nmhs’ of makefile
解决方案
在makefile中添加链接libnnz11库的参数
修改$ORACLE_HOME/sysman/lib/ins_emagent.mk,将
$(MK_EMAGENT_NMECTL)修改为:$(MK_EMAGENT_NMECTL) -lnnz11
建议修改前备份原始文件
[oracle@ysserver ~]$ cd $ORACLE_HOME/sysman/lib
[oracle@ysserver lib]$ cp ins_emagent.mk ins_emagent.mk.bak
[oracle@ysserver lib]$ vi ins_emagent.mk
进入vi编辑器后 命令模式输入/NMECTL 进行查找,快速定位要修改的行
在后面追加参数-lnnz11 第一个是字母l 后面两个是数字1
# 错误信息:ORA-12162: TNS:net service name is incorrectly specified 错误解决
原因:这是因为没有指定ORACLE_SID 造成的,我们可以查询一下自己的ORALCE这些配置文件信息。
请按下图操作:
1、也就是图中的第一步,查看ORACLE_HOME, ORACLE_SID 环境变量,这里我们可以看到ORACLE_HOME下是用信息的,但是ORACLE_SID是没有指定配置信息。
2、找到原因后,我们可以设置ORACLE_SID的配置信息,如下图第二步操作, export ORACLE_SID=orcl
设置完成后重复第一步查看,能查询出来信息说明配置成功。
3、 sqlplus 登录,如图
4、startup ,再次使用数据库工具连接的话,发现已经可以连接上数据库。
#Execute Root Scripts Faild
WARNING: [WARNING] [INS-10013] The installer has detected that current home is not registered in the central inventory on this system.
CAUSE: This can happen for the following reasons - either /home/oracle/u01/app/oraInventory/orainstRoot.sh has not been run or script failed to update the inventory.
ACTION: Run the script as a root user.
#su root
#sh /home/oracle/u01/app/oraInventory/orainstRoot.sh
标签: oracle
发表评论: