首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >一文带你手把手CentOS 7安装oracle11g

一文带你手把手CentOS 7安装oracle11g

原创
作者头像
QGS
修改2023-12-30 08:01:09
修改2023-12-30 08:01:09
5.2K0
举报
文章被收录于专栏:QGS星球QGS星球

Oracle与mysql的区别

1、Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高。

2、Oracle支持大并发,大访问量,是OLTP较好的工具。

3、安装所用的空间差别也是很大的,Mysql安装完后才152M而Oracle有3G左右,且使用的时候Oracle占用特别大的内存空间和其他机器性能。

可通过Xshell6和MobaXterm或者其他工具上传

代码语言:javascript
复制
cd /usr/local
ll
代码语言:javascript
复制
tar -zxvf jdk-linux-x64.tar.gz   #解压安装包
mv jdk1.8.0_131 java   #更改文件夹目录名称
代码语言:javascript
复制
vi /etc/profile    #更改环境变量,在最后添加如下内容

export JAVA_HOME=/usr/local/java
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
代码语言:javascript
复制
source /etc/profile
java -version           #如截图,完成成功

安装相关依赖包

代码语言:javascript
复制
yum -y install kernel-headers* gcc-c++* numactl-devel* glibc-headers* glibc-common* binutils* unixODBC-devel* libaio* make* elfutils-libelf* elfutils-libelf-devel* sysstat* glibc-static* glibc-devel* glibc* elfutils-libelf-devel-static* libaio* gcc* libgcc* libstdc++-static* libaio-devel* libstdc++* libaio-devel* unixODBC* libstdc++-devel* compat-libstdc++* libgcc* libgomp*

yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*i686 compat-libstdc++-33*.devel compat-libstdc++-33 compat-libstdc++-33*.devel gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devel libaio-devel*.devel libgcc libgcc*.i686 libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.devel libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686
代码语言:javascript
复制
yum -y install dnf  #安装dnf
代码语言:javascript
复制
#升级python并安装软件
yum update python*
yum install dnf-data dnf-plugins-core libdnf-devel libdnf python2-dnf-plugin-migrate dnf-automatic
代码语言:javascript
复制
dnf install tzdata*
dnf install libX*
代码语言:javascript
复制
groupadd oinstall   #创建组
groupadd dba 
useradd -m  -d /home/oracle  -g oinstall -G dba oracle  #创建oracle用户并分配组
passwd oracle  #设置oracle用户密码

配置文件

代码语言:javascript
复制
vi /etc/sysctl.conf  #修改内核,在最尾部添加如下内容

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1200000000
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
代码语言:javascript
复制
/sbin/sysctl -p
代码语言:javascript
复制
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
代码语言:javascript
复制
vi /etc/pam.d/login     #修改login文件,在尾部添加如下内容

session  required   /lib64/security/pam_limits.so
session  required   pam_limits.so
代码语言:javascript
复制
vi /etc/profile  #环境变量设置,尾部添加如下内容

if [ $USER = "oracle" ]; then
   if [ $SHELL = "/bin/ksh" ]; then
       ulimit -p 16384
       ulimit -n 65536
    else
       ulimit -u 16384 -n 65536
   fi
fi
代码语言:javascript
复制
source /etc/profile
代码语言:javascript
复制
#创建安装目录、修改文件权限
mkdir -p /opt/oracle/product/11.2.0 
mkdir    /opt/oracle/oradata 
mkdir    /opt/oracle/inventory  
mkdir    /opt/oracle/fast_recovery_area
chown -R oracle:oinstall /opt/oracle
chmod -R 775 /opt/oracle
代码语言:javascript
复制
vi /home/oracle/.bashrc   #设置环境oracle变量,在尾部添加如下内容

ORACLE_BASE=/opt/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0
ORACLE_SID=orcl
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
代码语言:javascript
复制
cd /opt/oracle #上传oracle两个压缩包,可通过Xshell6和MobaXterm或者其他工具上传
代码语言:javascript
复制
yum -y install unzip #安装解压命令
代码语言:javascript
复制
#解压
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
代码语言:javascript
复制
#为了方便更改主机名,我对主机名进行了修改
hostnamectl set-hostname c1
su
代码语言:javascript
复制
vi  /opt/oracle/database/response/db_install.rsp   #配置静默安装文件,配置内容如下,耐心配置,一 一对应

oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=c1
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/opt/oracle/inventory

SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/opt/oracle/product/11.2.0
ORACLE_BASE=/opt/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true
代码语言:javascript
复制
su - oracle  #切换到 oracle用户,进行下一步安装

cd /opt/oracle/database/
代码语言:javascript
复制
#安装,耐心等待即可
./runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile  /opt/oracle/database/response/db_install.rsp 
代码语言:javascript
复制
cd /opt/oracle/inventory/ #切换到目录,查看是否有./orainstRoot.sh文件
ll

./orainstRoot.sh  #执行./orainstRoot.sh文件

此脚本必须以根用户身份执行

代码语言:javascript
复制
su  #切换root用户,输入密码(由于之前切换到了oracle用户,所以要切换回root用户才能执行sh脚本)
代码语言:javascript
复制
cd /opt/oracle/product/11.2.0/
ll
./root.sh  #执行./root.sh脚本
代码语言:javascript
复制
su - oracle  #切换到oracle用户,配置监听
export DISPLAY=IP:0.0  #IP为本机地址,export DISPLAY=本机地址:0.0
netca -silent -responseFile  /opt/oracle/database/response/netca.rsp
代码语言:javascript
复制
dbca -silent -responseFile /opt/oracle/database/response/dbca.rsp #建立新库,页面不动之后回车后并输入oracle密码,等待初始化
sqlplus / as sysdba   #验证是否成功
代码语言:javascript
复制
sqlplus / as sysdba
startup

ORA-00845: MEMORY_TARGET not supported on this system

ORA-00845:此系统不支持目标内存

解决方法如下

方法1.简单粗暴

重启机子/虚拟机

方法2如下

代码语言:javascript
复制
cd /opt/oracle/product/11.2.0/dbs/
ll
代码语言:javascript
复制
cd /opt/oracle/admin/orcl11g/pfile
ll
代码语言:javascript
复制
cp init.ora.2220211118 /opt/oracle/product/11.2.0/dbs/   #根据实际来操作
cd /opt/oracle/product/11.2.0/dbs/
mv init.ora.2220211118 initorcl.ora
su      #切回root
chown oracle:oinstall initorcl.ora
代码语言:javascript
复制
df -h
代码语言:javascript
复制
mount -o remount,size=8.5G /dev/shm/

还不行就在重启一下

Oracle开发的关系数据库产品因性能卓越而闻名,Oracle数据库产品为财富排行榜上的前1000家公司所采用,许多大型网站也选用了Oracle系统,是世界最好的数据库产品。此外,Oracle公司还开发其他应用程序和软件。同时,Oracle在英语里还是“神谕”的意思,意为“替神说话的”,寓指Oracle公司的发展目标和决心地位。

我正在参与2023腾讯技术创作特训营第四期有奖征文,快来和我瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档