下载安装包和安装依赖 32位
64位
安装依赖
1 yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel
检查依赖
1 rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel | grep "not installed"
安装 compat-libstdc++-33
1 2 wget http://mirror.centos.org/centos/6.7/os/i386/Packages/compat-libstdc++-33-3.2.3-69.el6.i686.rpm rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
安装 pdksh
1 2 wget http://vault.centos.org/5.11/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
优化OS内核参数 (可选) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 fs.aio-max-nr=1048576 fs.file-max=6815744 kernel.shmall=2097152 kernel.shmmni=4096 kernel.shmmax = 8589934592 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=1048586 sysctl -p
创建oracle用户和oracle目录 配置hosts
1 2 vi /etc/hosts 172.26.138.81 oracle
创建用户
1 2 3 4 5 6 7 8 9 10 11 12 13 groupadd oinstall groupadd dba useradd -g oinstall -G dba oracle -d /home/oracle passwd oracle id oracle mkdir -p /opt/oracle/product mkdir -p /opt/oracle/oradata mkdir -p /opt/oracle/oraInventory mkdir -p /opt/oracle/flash_recovery_area mkdir -p /opt/oracle/etc chown -R oracle:oinstall /opt/oracle chmod -R 775 /opt/oracle/
配置环境变量
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 su oracle vi ~/.bash_profile export ORACLE_BASE=/opt/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0 export ORACLE_SID=orcl export ORACLE_TERM=xterm export TNS_ADMIN=$ORACLE_HOME/network/admin export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib export NLS_LANG=AMERICAN_AMERICA.UTF8 export LANG=en_US.UTF8 PATH=$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/bin export PATH source ~/.bash_profile
安装 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 su - oracle cd ~/download unzip linux.x64_11gR2_database_1of2.zip unzip linux.x64_11gR2_database_2of2.zip cp database/response/* /opt/oracle/etc/ vi /opt/oracle/etc/db_install.rsp oracle.install.option=INSTALL_DB_SWONLY DECLINE_SECURITY_UPDATES=true UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/opt/oracle/oraInventory SELECTED_LANGUAGES=en,zh_CN ORACLE_HOSTNAME=oracle ORACLE_HOME=/opt/oracle/product/11.2.0 ORACLE_BASE=/opt/oracle oracle.install.db.InstallEdition=EE oracle.install.db.isCustomInstall=true oracle.install.db.DBA_GROUP=dba oracle.install.db.OPER_GROUP=dba cd ~/download/database ./runInstaller -silent -ignorePrereq -responseFile /opt/oracle/etc/db_install.rsp exit sh /opt/oracle/oraInventory/orainstRoot.sh sh /opt/oracle/product/11.2.0/root.sh su - oracle netca /silent /responsefile /opt/oracle/etc/netca.rsp vi /opt/oracle/etc/dbca.rsp GDBNAME = "orcl" SID = "orcl" SYSPASSWORD = "oracle" SYSTEMPASSWORD = "oracle" SYSMANPASSWORD = "oracle" DBSNMPPASSWORD = "oracle" DATAFILEDESTINATION = /opt/oracle/oradata RECOVERYAREADESTINATION = /opt/oracle/flash_recovery_area CHARACTERSET = "AL32UTF8" ? ZHS16GBK TOTALMEMORY = "1638" dbca -silent -createDatabase -templateName General_Purpose.dbc -gdbName ORCL -sysPassword oracle -systemPassword oracle lsnrctl status cp /opt/oracle/admin/ORCL/pfile/init.ora.1124201914122 /opt/oracle/product/11.2.0/dbs/initorcl.ora sqlplus / as sysdba startup
启动 1 2 3 4 5 6 7 8 9 10 11 ps -ef | grep ora | awk '{print $2}' | xargs kill -9 echo 3 > /proc/sys/vm/drop_caches lsnrctl start sqlplus / as sysdba startup alter database mount; alter database open; shutdown immediate
字符编码 客户端
1 2 3 4 SIMPLIFIED CHINESE_CHINA.ZHS16GBK echo $NLS_LANG NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
服务端
1 2 3 4 5 6 7 8 9 10 11 select userenv('language') from dual; shutdown immediate startup mount alter system enable restricted session; alter system set job_queue_processes=0; alter system set aq_tm_processes=0; alter database open; alter database character set internal_use zhs16gbk; shutdown immediate startup
常见异常 Checking swap space: 0 MB available, 1535 MB required. Failed
1 2 3 4 5 6 7 8 9 10 11 12 swapon -s df -hal dd if=/dev/zero of=/swapfile bs=1024 count=512k mkswap /swapfile swapon /swapfile swapon -s vi /etc/fstab /swapfile swap swap defaults 0 0 chown root:root /swapfile chmod 0600 /swapfile
centos 安装oracle 报Checking swap space: 0 MB available, 150 MB required. Failed
ORA-00845: MEMORY_TARGET not supported on this system
https://blog.csdn.net/sunny05296/article/details/56495599 https://stackoverflow.com/questions/33366282/oracle-startup-not-possible-ora-00845-memory-target-not-supported-on-this-sys
1 2 3 4 5 6 7 8 9 mount -t tmpfs shmfs -o size=2G /dev/shm mount -t tmpfs shmfs -o size=1500m /dev/shm vi /etc/fstab tmpfs /dev/shm tmpfs defaults,size=2G 0 0 ORA-01507: database not mounted ORA-01102: cannot mount database in EXCLUSIVE mode ORA-01081: cannot start already-running ORACLE - shut it down first
参考