操作系统版本:rhel 7.4
Oracle 版本:oracle 12c 下载地址:https://www.oracle.com/technetwork/database/enterprise-edition/downloads/database12c-linux-download-2240591.html
一.环境准备、用户组创建、修改系统内核参数、修改用户配置 1.安装准备 systemctl stop firewalld.service #关闭防火墙 systemctl disable firewalld.service #禁止防火墙开机启动 systemctl status firewalld.service #查看防火墙状态 2.关闭selinux vi /etc/selinux/config #编辑文件 SELINUX=disabled #修改的内容 3.修改host名称(可以省略) # 在文件末尾加上192.168.159.129 oracle12c 名称自己取,前两行后面也加上名称,开始没加最后本机navicat连一直报监听找不着,实际监听是开了 #127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 oracle12c #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 oracle12c #192.168.159.129 oracle12c vi /etc/hosts 4.yum安装必要安装包(有错误就多执行几次) 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 # 检查是否安装成功(31个安装包) rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel 5.创建用户组 # 创建oinstall和dba组 groupadd oinstall groupadd dba # 创建oracle用户 useradd -g oinstall -G dba oracle # 设置oracle密码 passwd oracle #输入密码,确认密码后 passwd: all authentication tokens updated successfully. # 查看创建结果 id oracle 6.修改内核参数 vi /etc/sysctl.conf # 文件内容添加如下 fs.aio-max-nr = 1048576 fs.file-max = 6815744 # 该参数表示系统任意时刻可以分配的所有共享内存段的总和的最大值(以页为单位).其值应不小于 # shmmax/page_size(getconf PAGESIZE可以查询到).缺省值就是2097152 kernel.shmall = 2097152 #64 位 linux 系统:可取的最大值为物理内存值 -1byte ,建议值为多于物理内存的一半,一般取值大于 SGA_MAX_SIZE 即可, # 可以取物理内存 -1byte.例:内存为 16G 时,该值为 16*1024*1024*1024-1 = 17179869183 kernel.shmmax = 17179869183 # 缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G 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 #使配置生效 7.修改用户限制 vi /etc/security/limits.conf # 在文件末尾添加下面6行内容: oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240 oracle hard stack 10240 8.修改用户登录库文件引用 vi /etc/pam.d/login # 在文件末尾添加下面2行内容 session required /lib64/security/pam_limits.so session required pam_limits.so 9.修改用户登录环境变量 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 # 使修改的文件生效 source /etc/profile 10.创建安装目录,配置安装目录权限。 mkdir -p /usr/app/oracle chown -R oracle:oinstall /usr/app/ chmod -R 775 /usr/app/ 11.配置Oracle用户环境变量 su - oracle #切换用户 vi ~/.bash_profile # 添加内容如下 # 和创建的安装目录路径一样 export ORACLE_BASE=/usr/app/oracle # 指定sid名称 export ORACLE_SID=orcl source ~/.bash_profile #使配置生效source .bash_profile 二.数据库应用安装 1.使用oracle 用户,创建数据库安装配置文件夹etc su - oracle #不是oracle用户就先切换用户,是就不用执行 cd /home/oracle/ #到oracle目录下 mkdir etc 2.上传安装文件到/home/oracle/目录下并解压(上传文件命令rz,需安装才能用此命令:yum install -y lrzsz) su - root #切换到root用户 yum install -y unzip zip #安装解压软件,已经安装就不用执行 su - oracle #切换到oracle用户 unzip xxx.zip #解压文件 3.复制Oracle配置文件到etc目录下,并修改配置文件权限 cp /home/oracle/database/response/* /home/oracle/etc/ #复制文件 chmod 700 /home/oracle/etc/*.rsp #修改文件权限 4.修改静默安装配置文件db_install.rsp vi /home/oracle/etc/db_install.rsp # 修改内容如下 oracle.install.option=INSTALL_DB_SWONLY #安装类型 UNIX_GROUP_NAME=oinstall #安装组 INVENTORY_LOCATION=/usr/app/oracle/oraInventory #与上面创建的安装目录有关/usr/app/oracle ORACLE_HOME=/usr/app/oracle/product/12/db_1 #与上面创建的安装目录有关/usr/app/oracle ORACLE_BASE=/usr/app/oracle #与上面创建的安装目录有关/usr/app/oracle oracle.install.db.InstallEdition=EE #企业版本 oracle.install.db.OSDBA_GROUP=dba oracle.install.db.OSOPER_GROUP=oinstall oracle.install.db.OSBACKUPDBA_GROUP=oinstall oracle.install.db.OSDGDBA_GROUP=oinstall oracle.install.db.OSKMDBA_GROUP=oinstall oracle.install.db.OSRACDBA_GROUP=oinstall oracle.install.db.config.starterdb.type=GENERAL_PURPOSE #数据库类型 oracle.install.db.config.starterdb.globalDBName=orcl #数据库名 oracle.install.db.config.starterdb.SID=orcl #实例名 SECURITY_UPDATES_VIA_MYORACLESUPPORT=false DECLINE_SECURITY_UPDATES=true oracle.install.db.config.starterdb.characterSet=AL32UTF8 5.开始安装,执行db_install.rsp cd /home/oracle/database; ./runInstaller -silent -responseFile /home/oracle/etc/db_install.rsp #等待安装完成:提示[WARNING]不用管,出现[FATAL]则安装已经停止,完成后显示:Successfully Setup Software. 6.切换到root用户,修改数据库配置 su - root /usr/app/oracle/oraInventory/orainstRoot.sh /usr/app/oracle/product/12/db_1/root.sh 7.修改oracle用户环境变量 su - oracle vi ~/.bash_profile # 后面追加内容如下 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib export ORACLE_HOME=/usr/app/oracle/product/12/db_1 export PATH=$PATH:$ORACLE_HOME/bin export LANG="zh_CN.UTF-8" export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8" export NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss' source .bash_profile #执行命令使环境变量生效 8.配置监听程序 cd /home/oracle; netca /silent /responsefile /home/oracle/etc/netca.rsp 9.启动监听 lsnrctl start 10.静默建库配置文件修改 mkdir /usr/app/oracle/oradata;#创建数据文件存放的目录 vi etc/dbca.rsp #修改如下 gdbName=orcl sid=orcl characterSet=AL32UTF8 listeners=LISTENER databaseConfigType=SI datafileDestination=/usr/app/oracle/oradata #指定数据文件存放的目录 recoveryAreaDestination=/usr/app/oracle/flash_recovery_area #恢复数据存放目录 totalMemory=1638 #totalMemory ="1638" 为1638MB,物理内存2G*80% templateName=/usr/app/oracle/product/12/db_1/assistants/dbca/templates/General_Purpose.dbc #不填写的时候报了[FATAL] [DBT-10503] 指定的模板文件无效。 nationalCharacterSet=AL16UTF16 #国家字符集2个值AL16UTF16或UTF8,默认值是AL16UTF16,默认值就可不用改 sysPassword=oracle12c #指定sys用户密码 systemPassword=oracle12c #指定system用户密码 oracleHomeUserPassword=oracle12c 11.执行静默建库 cd /home/oracle; dbca -silent -createDatabase -responseFile /home/oracle/etc/dbca.rsp 12.测试登录 sqlplus / as sysdba 注:每次虚拟机重启执行命令都要开启监听,打开数据库 su - oracle #切换到oracle用户 lsnrctl start #开启监听 sqlplus / as sysdba startup ****把上面步骤放到开机自动执行**** 切换root用户执行下面语句 vi /etc/oratab #修改此文件,让sqlplus / as sysdba;startup;不用手动执行 orcl:/u01/app/oracle/product/11.2.0.4/db_1:N #这里把N改成Y,数据库开机自动打开 vi /etc/rc.local #修改此文件,数据库监听和服务开机自启 su - oracle -lc "/usr/app/oracle/product/12/db_1/bin/lsnrctl start" #与安装目录相关 su - oracle -lc /usr/app/oracle/product/12/db_1/bin/dbstart #与安装目录相关 修改DB启动配置文件(安装目录中的dbstart文件) vi /usr/app/oracle/product/12/db_1/bin/dbstart 将ORACLE_HOME_LISTNER=$1中的$1修改为/usr/app/oracle/product/12/db_1/ #oracle安装路径 Oracle 12c 创建 hr 联系用户 [oracle@rhel7 ~]$ sqlplus / as sysdba SQL> @$ORACLE_HOME/demo/schema/human_resources/hr_main.sql parameter 1 : password“hr” ##输入hr密码 parameter 2 :表空间 users ##输入hr表空间 parameter 3:临时表空间 temp ##输入临时表空间 parameter 4:log路径 $ORACLE_HOME/log ##输入hr日志存放位置 SQL> conn hr/hr Connected. SQL> select table_name from user_tables; TABLE_NAME -------------------------------------------------------------------------------- REGIONS COUNTRIES LOCATIONS DEPARTMENTS JOBS EMPLOYEES JOB_HISTORY 7 rows selected
PLSQL Devloper 12连接配置:
拷贝以下两个文件到同一个目录下(目录名称不能包含中文、空格,必须是英文名称)
把tnsnames.ora 文件拷贝到 instantclient_12_2 这个文件夹下:
附:客户端和plsql devplover 下载地址如下:
链接:https://pan.baidu.com/s/1xmn5VZ47ATz4LqcTXs_WkA
提取码:6phz