2022年Oracle数据库在Linux系统中的安装 .pdf
Oracle 数据库在 Linux 系统中的安装名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 15 页 - - - - - - - - - 目录一、软件名称. 3二、操作系统. 3三、安装前检查. 3四、安装过程. 31. 创建组OINSTALL 和DBA. 32. 创建用户ORACLE并加入组,设定密码ORACLE . 33. 运行下面代码完成对系统的配制(使用ROOT用户) . 44. 创建安装目录,并更改属性 . 45. 更改ORACLE用户的环境变量. 46. 将数据库安装文件拷贝到目录/HOME/ORACLE,并将档案属性更改为777 . 57解压缩软件软件. 58. 进入DATABASE目录进行安装 . 59配置 . 9五、配置数据库文件. 111、编辑DBORA文件 . 112、赋予执行权限. 123、导入数据库表. 13六、数据库操作. 131、启动和停止ORACLE 企业管理器数据库控制:. 132、启动和停止监听器:. 133、启动和停止数据库:. 134、为SCOTT用户赋权:. 145、常见问题:. 14名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 15 页 - - - - - - - - - 一、软件名称linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip 二、操作系统Red Hat Enterprise Linux 5.6 三、安装前检查安装前要查询以下软件是否已经安装了,如果没有安装,需要从Linux 安装光盘里安装Binutils Compat-libstdc+-3 Elfutils-libelf Elfutils-libelf-devel Glibc Glibc-common Glibc-devel Gcc- Gcc-c+ Libaio-devel Libaio Libgcc Libstdc+ Libstdc+-devel Make Sysstat UnixODBC UnixODBC-devel Pdksh 使用 rpm q 软件名称rpm -q binutils compat-libstdc+-3 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc- gcc-c+ libaio-devel libaio libgcc libstdc+ libstdc+-devel make sysstat unixODBC unixODBC-devel pdksh 四、安装过程1. 创建组 oinstall 和 dba Shell groupadd oinstall Shell groupadd dba 2. 创建用户 oracle并加入组,设定密码oracle 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 15 页 - - - - - - - - - Shell useradd g oinstall G dba oracle Shell passwd oracle 3. 运行下面代码完成对系统的配制(使用root 用户)Shell cat /etc/security/limits.conf cat /etc/pam.d/login cat /etc/profile vi /home/oracle/.bash_profile 将以下内容复制粘贴到打开的文档中后,保存退出TMP=/tmp; export TMP TMPDIR=$TMP; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 15 页 - - - - - - - - - export TMPDIR ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/11.2/db_1; export ORACLE_HOME ORACLE_SID=malware; export ORACLE_SID ORACLE_TERM=xterm; export ORACLE_TERM PATH=/usr/sbin:$PATH; export PATH PATH=$ORACLE_HOME/bin:$PATH; export PATH LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH 6. 将数据库安装文件拷贝到目录/home/oracle,并将档案属性更改为777 Shell chmod 777 * 7解压缩软件软件Shell unzip linux.x64_11gR2_database_1of2.zip Shell unzip linux.x64_11gR2_database_2of2.zip 8. 进入 database目录进行安装Su oracle Cd database /在安装 oracle 数据库时需要进入到oracle用户下(如果在root 用户下安装,软件会提示切换到 oracle用户下)1)Shell ./runinstaller 弹出 Oracle安装的图形界面,如图1 所示。取消打“”选项,单击下一步按钮。此时弹出未指定电子邮件地址对话框,单击“是”按钮,如图 2 所示,进入安装选项界面名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 15 页 - - - - - - - - - 图 1 配置安全更新图 2 提示未指定电子邮件地址2)安装选项界面中选择“创建和配制数据库”项,点击下一步按钮,如图3所示,进入系统类别选择界面图 3 安装选项界面3)在系统类别选择界面中,选择“服务器类”,如图 4 所示,单击下一步进行“选择要执行的数据库安装类型” ,选择“单实例数据库安装”选项,如图5所示,单击下一步,进入安装类型选择界面图 4 在该界面下选择数据库类型图 5 选择“单实例数据库安装”名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 15 页 - - - - - - - - - 4)在安装类型选择界面中,选择“典型安装”,如图 6 所示,点击下一步按钮,进入典型安装配制界面,如图7 所示, 更改数据库文件位置为 /u02/oradata ,输入全局数据库名称和管理口令后,单击下一步,进入创建产品清单界面.全局数据库名称为 malware.密码:ngb 图 6 选择“典型安装”图 7 典型安装配制界面5)在创建产品清单界面中,保持默认配置,如图8 所示,单击下一步,进入执行先决条件检查界面,如图9 所示。图 8 创建产品清单界面图 9 执行先决条件检查界面注:在图 9 中有很多失败项:1交换空间大小应该在安装系统时分配足够的空间2操作系统内核参数失败项,可以通过执行该脚本文件解决/tmp/CVU_11.2.0.1.0_oracle/runfixup.sh 3程序包失败项,可以通过从安装光盘里安装上解决完以上问题后,在图9 界面下,点击重新检查后,如图10 所示,条件检查通过,单击下一步,进入“概要”界面,点击完成按钮开始安装数据库和创建数据库实例,如图 1013所示名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 15 页 - - - - - - - - - 图 10 先决条件检查通过图 11 概要界面图 12 数据库软件安装过程图 13 数据库实例创建过程6)解锁 scott用户,并设置密码,如图14 和 15 所示,单击图 14 中的口令管理按钮,进入图15 界面。解锁完用户后,点击确定按钮,退回到图14 界面,点击“确定”按钮,进入执行配制脚本界面图 14 单击“口令管理”按钮图 15 解锁 scott 用户,并设定口令7)执行配制脚本,界面如图16 所示名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 15 页 - - - - - - - - - 图 16 执行配制脚本界面执行脚本方法:a. 打开一个终端b. 将脚本 1,复制粘贴到终端中执行shell /u01/app/oraInventory/orainstRoot.sh c脚本 1 执行完成后,用同样的方法执行脚本2 shell /u01/app/oracle/product/11.2/db_1/root.sh 执行完脚本后,回到图16 界面,单击确定按钮,oracle 数据库安装完成,如图17 所示。图 17 安装完成界面9配置1)对/etc/oratab的配置Shell vi /etc/oratab 将最后一行的 N 改成 Y 后保存退出2)配制数据库 dbstart Shell cd $ORACLE_HOME Shell cd /u01/app/oracle/product/11.2/db_1/bin Shell vi dbstart 找到此段话 (在最前端 ) # First argument is used to bring up Oracle Net Listener ORACLE_HOME_LISTNER= $1/需要将此处的ORACLE_HOME_LISTNER=$1 修改为ORACLE_HOME_LISTNER= $ORACLE_HOMEif ! $ORACLE_HOME_LISTNER ; then echo ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 15 页 - - - - - - - - - echo Usage: $0 ORACLE_HOME else LOG=$ORACLE_HOME_LISTNER/listener.log 3)配制数据库 dbshut Shell cd $ORACLE_HOME Shell cd /u01/app/oracle/product/11.2/db_1/bin Shell vi dbshut 找到此段话 (在最前端 ) # The this to bring down Oracle Net Listener ORACLE_HOME_LISTNER= $1/需要将此处的ORACLE_HOME_LISTNER=$1 修改为ORACLE_HOME_LISTNER= $ORACLE_HOMEif ! $ORACLE_HOME_LISTNER ; then echo ORACLE_HOME_LISTNER is not SET, unable to auto-stop Oracle Net Listener echo Usage: $0 ORACLE_HOME else LOG=$ORACLE_HOME_LISTNER/listener.log 4)其它配置shell sqlplus /nolog /运行 sqlplus 软件SQL /运行以下代码,逐条下发conn / as sysdba ALTER DATABASE TEMPFILE /u02/oradata/malware/temp01.dbf RESIZE 1000M; ALTER DATABASE DATAFILE /u02/oradata/malware/system01.dbf RESIZE 2000M; ALTER DATABASE DATAFILE /u02/oradata/malware/sysaux01.dbf RESIZE 1000M; ALTER DATABASE DATAFILE /u02/oradata/malware/undotbs01.dbf RESIZE 500M; CREATE TEMPORARY TABLESPACE mal_temp TEMPFILE /u02/oradata/malware/MAL_TEMP.dbf SIZE 2000M AUTOEXTEND ON; CREATE TABLESPACE mal_data DATAFILE /u02/oradata/malware/MAL_DATA.dbf SIZE 4000M AUTOEXTEND ON; CREATE USER mal IDENTIFIED BY 123456 DEFAULT TABLESPACE mal_data TEMPORARY TABLESPACE mal_temp; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 15 页 - - - - - - - - - GRANT dba, resource, CREATE SESSION, CREATE ANY TABLE, CREATE ANY VIEW, CREATE ANY INDEX, CREATE ANY PROCEDURE, ALTER ANY TABLE, ALTER ANY PROCEDURE, DROP ANY TABLE, DROP ANY VIEW, DROP ANY INDEX, DROP ANY PROCEDURE, SELECT ANY TABLE, INSERT ANY TABLE, UPDATE ANY TABLE, DELETE ANY TABLE TO mal; 五、配置数据库文件1、编辑 dbora 文件在启动了 Linux 系统之后,转到 /etc/init.d 目录下;rootoracle # cd /etc/init.d 使用 vi 命令,新建一个以 oracle 命名的文件(并将以下代码复制至文件中)rootoracle init.d# vi dbora #!/bin/sh # chkconfig: 345 61 61 # description: Oracle 11g AutoRun Services # /etc/init.d/oracle # # Run-level Startup script for the Oracle Instance, Listener, and # Web Interface export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2/db_1 export ORACLE_SID=malware export PATH=$PATH:$ORACLE_HOME/bin ORA_OWNR=oracle # if the executables do not exist - display error if ! -f $ORACLE_HOME/bin/dbstart - o ! -d $ORACLE_HOME then echo Oracle startup: cannot start exit 1 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 15 页 - - - - - - - - - fi # depending on parameter - startup, shutdown, restart # of the instance and listener or usage display case $1 in start) # Oracle listener and instance startup su $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart echo Oracle Start Succesful!OK. ; stop) # Oracle listener and instance shutdown su $ORA_OWNR -lc $ORACLE_HOME/bin/dbshut echo Oracle Stop Succesful!OK. ; reload|restart) $0 stop $0 start ; *) echo $ Usage: basename $0 start|stop|reload|reload exit 1 esac exit 0 在编辑完成之后,使用 :x 命令保存此文件。2、赋予执行权限rootoracle init.d# chmod 750 /etc/init.d/dbora 链接: rootoracle init.d# ln -s /etc/init.d/dbora /etc/rc1.d/K61oracle rootoracle init.d# ln -s /etc/init.d/dbora /etc/rc3.d/S61oracle 执行以下命令 : rootoracle init.d# chkconfig -level 345 dbora on 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 15 页 - - - - - - - - - rootoracle init.d# chkconfig -add dbora 3、导入数据库表Exp scott/ngbddos file = filename.dmp tables= 导出的表名 . 其中scott 为用户名Ngb 为密码Ddos 为数据库名称(SID)Filename 我们采用的命名方式为SID+-+ 时间。数据导入命令为:Imp scott/ngbddos file = filename.dmp tables= 导入的表名full=y ignore=true; 其中scott 为用户名Ngb 为密码Ddos 为数据库名称(SID)Filename 为我们导出的数据库文件六、数据库操作1、启动和停止Oracle 企业管理器数据库控制:$ emctl start dbconsole $ emctl stop dbconsole 2、启动和停止监听器:监听器接受客户端的连接请求,并在验证证书后创建数据库连接。要使用 OEM ,必须先启动监听器。$ lsnrctl start $ lsnrctl stop 3、启动和停止数据库:启动和停止数据库的最简单方法是从 OEM 控制台启动和停止。要从命令行执行此操作,请在以 oracle 身份登录后使用 SQL*Plus ,如下所示:启动:$ sqlplus /nologconn / as sysdba SQL startup ORACLE instance started. Total System Global Area 849530880 bytes Fixed Size 1303216 bytes 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 15 页 - - - - - - - - - Variable Size 377490768 bytes Database Buffers 465567744 bytes Redo Buffers 5169152 bytes Database mounted. Database opened.SQL exit停止:$ sqlplus /nologconn / as sysdba SQL shutdown immediate Database closed. Database dismounted. ORACLE instance shut down.SQL exit4、为 scott 用户赋权:Step1:在系统服务器环境下,打开命令行,以system 身份登录数据库,输入命令“sqlplu s system/ 初始密码 SID as sysdba”;Step2:解锁 scott用户,输入命令“ alter user scott account unlock”;Step3:更改 scott用户密码,输入命令“ alter user scott identified by 密码”;Step4:为 scott用户赋权,输入命令“ grant all privileges to scott”;5、常见问题:安装 rpm -ivh qt-3.3.6-23.el5.i386.rpm需要先安装rpm -ivh qt-3.3.6-23.el5.i386.rpm 日志文件位置/u01/app/oraInventory/logs/ 命令在/u01/app/oracle/product/11.2/db_1/bin 用命令 netca 创建监听然后使用 dbca 命令创建实例查看数据库状态名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 15 页 - - - - - - - - - Set oracle_sid=SERVICENAME. Sqlplus / as sysdba Select status from v$instance; 文件 dbhome , oraenv , coraenv 存在于目录 /usr/local/bin. 下名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 15 页 - - - - - - - - -