如果还没有Centos7环境请参考:VM+CentOS7学习环境搭建
由于Oracle官网上无法下载Oracle数据库之前的版本,可以在 Oracle Software Delivery Cloud 里搜索oracle database 11g




或者百度网盘下载链接:https://pan.baidu.com/s/1r57xI5fSVba_Q3biCj06yg
提取码:xk30
- #切换到root
- su root
- #创建用户组oinstall
- groupadd oinstall
- #创建用户组dba
- groupadd dba
- #创建oracle用户,并加入到oinstall和dba用户组
- useradd -g oinstall -g dba -m oracle
- #设置用户oracle的登陆密码
- passwd oracle
- # 查看新建的oracle用户
- id oracle
- #oracle数据库安装目录
- mkdir -p /data/oracle
- #oracle数据库配置文件目录
- mkdir -p /data/oraInventory
- #oracle数据库软件包解压目录
- mkdir -p /data/database
- cd /data
- #设置目录所有者为oinstall用户组的oracle用户
- chown -R oracle:oinstall /data/oracle
- chown -R oracle:oinstall /data/oraInventory
- chown -R oracle:oinstall /data/database
oracle默认不支持CentOS系统安装
echo redhat-7 > /etc/redhat-release
- vi /etc/selinux/config
- # 此处修改为disabled
- SELINUX=disabled
- #关闭防火墙
- systemctl status firewalld.service
- #禁止使用防火墙(重启也是禁止的)
- systemctl disable firewalld.service
- #重启
- reboot
yum install -y binutils compat-gcc* compat-glibc* compat-libcap1 compat-libstd* compat-libstdc++-33 compat-libstdc++-33.i686 compat-libstdc++-33*.i686 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-devel.i686 glibc-devel*.i686 glibc-headers glibc.i686 glibc*.i686 ksh libaio libaio-devel libaio-devel.i686 libaio-devel*.i686 libaio.i686 libaio*.i686 libgcc libgcc.i686 libgcc*.i686 libstdc++ libstdc++-devel libstdc++-devel*.i686 libstdc++.i686 libstdc++*.i686 libXp make numactl sysstat unixODBC unixODBC-devel unixODBC-devel*.i686 unixODBC*.i686
vi /etc/sysctl.conf
- # System default settings live in /usr/lib/sysctl.d/00-system.conf.
- # To override those settings, enter new settings here, or in an /etc/sysctl.d/
.conf file - #
- # For more information, see sysctl.conf(5) and sysctl.d(5).
- net.ipv4.icmp_echo_ignore_broadcasts = 1
- net.ipv4.conf.all.rp_filter = 1
- #设置最大打开文件数
- fs.file-max = 6815744
- fs.aio-max-nr = 1048576
- #共享内存的总量,8G内存设置:2097152*4k/1024/1024
- kernel.shmall = 2097152
- #最大共享内存的段大小
- kernel.shmmax = 2147483648
- #整个系统共享内存端的最大数
- kernel.shmmni = 4096
- kernel.sem = 250 32000 100 128
- #可使用的IPv4端口范围
- 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
vi /etc/security/limits.conf
- #* soft core 0
- #* hard rss 10000
- #@student hard nproc 20
- #@faculty soft nproc 20
- #@faculty hard nproc 50
- #ftp hard nproc 0
- #@student - maxlogins 4
- oracle soft nproc 2047
- oracle hard nproc 16384
- oracle soft nofile 1024
- oracle hard nofile 65536
- # End of file
vi /home/oracle/.bash_profile
- # .bash_profile
- # Get the aliases and functions
- if [ -f ~/.bashrc ]; then
- . ~/.bashrc
- fi
- # User specific environment and startup programs
- PATH=$PATH:$HOME/.local/bin:$HOME/bin
- export PATH
- ###############################这上面是之前的内容#############
- ###############################这下面是需追加的内容#############
- #oracle数据库安装目录
- export ORACLE_BASE=/data/oracle
- #oracle数据库路径
- export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
- #oracle启动数据库实例名
- export ORACLE_SID=orcl
- #xterm窗口模式安装
- export ORACLE_TERM=xterm
- #添加系统环境变量
- export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
- #添加系统环境变量
- export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
- #防止安装过程出现乱码
- export LANG=C
- #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致,如:ZHS16GBK,否则出现数据导入导出中文乱码问题
- export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
- # 使配置生效
- source /home/oracle/.bash_profile
- ## cd到压缩包路径下
- cd /home/zmj/Downloads/
- #看下文件
- ll
- #total 2295592
- #-rwxrw-rw-. 1 zmj zmj 1239269270 Nov 15 07:21 linux.x64_11gR2_database_1of2.zip
- #-rwxrw-rw-. 1 zmj zmj 1111416131 Nov 15 07:03 linux.x64_11gR2_database_2of2.zip
- #解压到/data/database下
- unzip linux.x64_11gR2_database_1of2.zip -d /data/database/
- unzip linux.x64_11gR2_database_2of2.zip -d /data/database/
- chown -R oracle:oinstall /data/database/database/
由于我安装的CentOS分辨率问题,导致oracle图形界面过程中的某些弹窗无法正常弹出。安装过程弹框界面是一个白色竖线一般,整个界面无法点击next按钮。这里推荐使用Xmanager工具中的Xstart
- #centos7安装xterm
- yum install -y xterm
双击Xstart

配置主机IP为centos7的IP;用户和密码是Oracle的登录用户和密码;
命令为/usr/bin/xterm -ls -display $DISPLAY
点击运行。cd到指定目录下,
设置编码,export LANG=en_US.UTF-8
执行./runInstaller

去掉“I wish receive security via My Oracle Support”的勾选,单击“next”,选“yes”继续

选中“Create and configure a database”,点击“next”
选中“DesktopClass”,点击“next”
选择Character Set为UTF-8
为orcl设置密码

This is a prerequisite condition to test whether sufficient total swap space is available on the system. (more details)
Expected Value
: 15.64GB (1.6403472E7KB) 16400000
Actual Value
: 4.87GB (5111800.0KB)
问题原因:没有swap空间不足导致,需要扩大交换空间
- 使用dd命令创建一个swap分区
- dd if=/dev/zero of=/home/swap bs=1024 count=16400000
- #格式化刚才创建的分区
- mkswap /home/swap
- #再使用swapon命令把这个文件分区变成swap分区
- swapon /home/swap
- #查看已经扩容的了swap分区
- free -m
-
- vi /etc/fstab
- #在文件末尾加上 /home/swap swap swap default 0 0
-
- echo "swapon /home/swap" >> /etc/inittab
- su - oracle
- #启动监听
- lsnrctl start
-
- sqlplus /nolog
- conn sys/sys@orcl as sysdba
- #或者
- sqlplus scott/tiger@192.168.235.132:1521/orcl

SQL命令参照: