Oracle   发布时间:2022-05-17  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Oracle数据库部署大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

Oracle数据库部署

前言:前面我们学习过微软的sqlserver,还有甲骨文公司的@H_699_15@mysqL,也理解了数据库系统的作用,这两种数据库管理系统适用于软件,网站,游戏等后台数据库,例如我们在学习@H_699_15@mysqL的时候搭建过动态网站。但Oracle属于非常安全、完善的大型数据库管理软件,在电信、银行、证券等大型应用场合拥有着绝对的优势。那么今天就给搭建介绍Oracle的安装和基本的使用。Oracle可以安装到windowslinux系统上,但企业更多采用在linux上安装,接下来我就以redhat6.5为例。

关于Oracle

最流行的大型关系数据库

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M01/97/85/wKioL1kvbH6QXXTdAAP7PAlOv0E716.png-wh_500x0-wm_3-wmp_4-s_1279027371.png">

Oracle数据库部署s.wIDth=650;" wIDth="14" height="14" src="http://img.code.cc/vcimg/static/loading.png" style="BACkground:url("/e/u261/themes/default/images/word.gif") no-repeat center;border:1px solID #ddd;" src="http://xiaorenwutest.blog.51cto.come/u261/themes/default/images/spacer.gif">

甲骨文公司出品,目前最新版本为Oracle12c

Oracle数据库部署s.wIDth=650;" wIDth="14" height="14" src="http://img.code.cc/vcimg/static/loading.png" style="BACkground:url("/e/u261/themes/default/images/word.gif") no-repeat center;border:1px solID #ddd;" src="http://xiaorenwutest.blog.51cto.come/u261/themes/default/images/spacer.gif">

本课程以64位企业版Oracle11gR2为例

Oracle数据库部署s.wIDth=650;" wIDth="14" height="14" src="http://img.code.cc/vcimg/static/loading.png" style="BACkground:url("/e/u261/themes/default/images/word.gif") no-repeat center;border:1px solID #ddd;" src="http://xiaorenwutest.blog.51cto.come/u261/themes/default/images/spacer.gif">

官方网站:http://www.Oracle.com/

Oracle数据库部署s.wIDth=650;" wIDth="14" height="14" src="http://img.code.cc/vcimg/static/loading.png" style="BACkground:url("/e/u261/themes/default/images/word.gif") no-repeat center;border:1px solID #ddd;" src="http://xiaorenwutest.blog.51cto.come/u261/themes/default/images/spacer.gif">

采用C/S模式、支持sql查询语言

Oracle数据库部署s.wIDth=650;" wIDth="14" height="14" src="http://img.code.cc/vcimg/static/loading.png" style="BACkground:url("/e/u261/themes/default/images/word.gif") no-repeat center;border:1px solID #ddd;" src="http://xiaorenwutest.blog.51cto.come/u261/themes/default/images/spacer.gif">

在稳定性、高性能、安全性等方面优于其他数据库,因此常用于政府及企业

Oracle数据库部署s.wIDth=650;" wIDth="14" height="14" src="http://img.code.cc/vcimg/static/loading.png" style="BACkground:url("/e/u261/themes/default/images/word.gif") no-repeat center;border:1px solID #ddd;" src="http://xiaorenwutest.blog.51cto.come/u261/themes/default/images/spacer.gif">

Oracle的优点:支持sql语句、C/S模式、高性能、安全性高

一、安装Oracle的准备工作

1、系统及配置要求

1)确认linux系统的版本

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s3.51cto.com/wyfs02/M02/97/83/wKiom1kvbJjBFXfQAABQ2B4WIa8599.png-wh_500x0-wm_3-wmp_4-s_3257624750.png">

2)物理内存:必须高于1G

物理内存应不少于1GB,对于vmware虚拟机建议不少于1200MB.对于系统中的交换分区设置,应参以下约定:物理内存为1GB~2GB时,交换分区为物理内存的1.5~2倍;物理内存为2GB~16GB时,交换分区与物理内存大小相同;物理内存超过16GB时,交换分区使用16GB就可以了。

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s5.51cto.com/wyfs02/M00/97/83/wKiom1kvbKvTdO4MAABzSzYITn4221.png-wh_500x0-wm_3-wmp_4-s_1168024386.png">

3)硬盘空间:企业版需要5.65G,还要确保/tmp目录所在的分区空间不少于1G,建议总的空间给10G以上

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s3.51cto.com/wyfs02/M00/97/84/wKiom1kvbL6yjHgJAABGBayPjsI373.png-wh_500x0-wm_3-wmp_4-s_2159884226.png">

4)确定主机名之后修改hosts文件(安装好Oracle之后再修改主机名会导致数据库启动失败)

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s5.51cto.com/wyfs02/M01/97/85/wKioL1kvbNSDOBMjAAB34DrhQeY160.png-wh_500x0-wm_3-wmp_4-s_2050422082.png">

2、配置yum,安装支持包

Vim Oracle.repo

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M00/97/85/wKioL1kvbOrTg-LRAAAvJ27J4jQ255.png-wh_500x0-wm_3-wmp_4-s_1096493681.png">

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s3.51cto.com/wyfs02/M01/97/84/wKiom1kvbP2Qyo-YAABEisJXfk8287.png-wh_500x0-wm_3-wmp_4-s_4263804720.png">

需要安装pdksh包,但是Redhat6.5光盘中的ksh存在兼容性冲突,所以需要单独安装pdksh-5.2.14-37.el5_8.1.x86_64.rpm,使用rpm安装即可。(需要单独安装,通过wget下载)

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M02/97/84/wKiom1kvbQ_zI1xRAAA8fEaP7G0584.png-wh_500x0-wm_3-wmp_4-s_153814960.png">

3、调整内核参数

内核参数调整体现在/etc/sysctl.conf文件中。主要包括对内存调度、端口范围、打开文件数、I/O请求等相关的一些设置,相关数值不可低于安装要求。修改完毕后通过执行sysctl �Cp命令使新配置立即生效。

vim /etc/sysctl.conf在文件尾部添加如下内容:

fs.aio-max-nr = 1048576

fs.file-max = 6815744

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 = 5194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048586

在下面的三行前面加上#注释。

#net.brIDge.brIDge-nf-call-iP6tables = 0

#net.brIDge.brIDge-nf-call-iptables = 0

#net.brIDge.brIDge-nf-call-arptables = 0

各参数详解:

fs.aio-max-nr

此参数限制并发未完成的请求,应该设置避免I/O子系统故障。

fs.file-max

该参数决定了系统中所允许的文件句柄最大数目,文件句柄设置代表linux系统中可以打开的文件的数量。

kernel.shmall

该参数控制可以使用的共享内存的总页数。linux共享内存页大小为4KB,共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需要共享内存页数是16GB/4KB=16777216KB /4KB=4194304(页),也就是64Bit系统下16GB物理内存,设置kernel.shmall = 4194304才符合要求.

kernel.shmmax

是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。设置应该足够大,设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降。至于导致系统下降的主要原因为在实例启动以及ServerProcess创建的时候,多个小的共享内存段可能会导致当时轻微的系统性能的降低(在启动的时候需要去创建多个虚拟地址段,在进程创建的时候要让进程对多个段进行“识别”,会有一些影响),但是其他时候都不会有影响。

官方建议值:

32linux系统:可取最大值为4GB4294967296bytes-1byte,即4294967295。建议值为多于内存的一半,所以如果是32为系统,一般可取值为4294967295

64linux系统:可取的最大值为物理内存值-1byte,建议值为多于物理内存的一半,例如,如果为12GB物理内存,可取12*1024*1024*1024-1=12884901887

kernel.shmmni

该参数是共享内存段的最大数量。shmmni缺省值4096,一般肯定是够用了。

kernel.sem

kernel.sem = 250 32000 100 128例:

250是参数semmsl的值,表示一个信号量集合中能够包含的信号量最大数目。

32000是参数semmns的值,表示系统内可允许的信号量最大数目。

100是参数semopm的值,表示单个semopm()调用在一个信号量集合上可以执行的操作数量。

128是参数semmni的值,表示系统信号量集合总数。

net.ipv4.ip_local_port_range

表示应用程序可使用的IPv4端口范围。

net.core.rmem_default

表示套接字接收缓冲区大小的缺省值

net.core.rmem_max

表示套接字接收缓冲区大小的最大值。

net.core.wmem_default

表示套接字发送缓冲区大小的缺省值

net.core.wmem_max

表示套接字发送缓冲区大小的最大值。

4Oracle用户要求

Oracle需要固定的运行用户Oracle,安装组oinstall,管理组dba,这些账号需要提前建立好。此外用来存放Oracle程序及数据库文件的基本目录/opt/Oracle也应该提前创建好。

1)建立用户和组

[root@rHel1 ~]# groupadd oinstall

[root@rHel1 ~]# groupadd dba

[root@rHel1 ~]# useradd -g oinstall -G dba Oracle

[root@rHel1 ~]# passwd Oracle

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M01/97/84/wKiom1kvbTCivI6LAAANM0Jh69k210.png-wh_500x0-wm_3-wmp_4-s_2866570501.png">

2)建立相关目录

[root@rHel1 ~]# mkdir /opt/Oracle

[root@rHel1 ~]# chown -R Oracle:oinstall /opt/Oracle

[root@rHel1 ~]# chmod -R 755 /opt/Oracle

[root@rHel1 ~]# sudo mkdir /opt/tmp

[root@rHel1 ~]# sudo chmod a+wr /opt/tmp

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s1.51cto.com/wyfs02/M01/97/84/wKiom1kvbUKw8NkZAAAMZDS4608952.png-wh_500x0-wm_3-wmp_4-s_810168343.png">

5Oracle11g的安装任务应以运行用户Oracle的身份执行,需适当调整Oracle用户的环境配置以便满足要求。Oracle11g安装界的语言类型取决于环境变量LANG,若希望用中文安装界面,则应确保LANG变量的值为zh_CN.UTF-8。中文安装界面有时会因缺少字体、字体配置不当等原因导致界面乱码。这时可以改用en_US.UTF-8英文环境以回避类似问题。

vim ~Oracle/.bash_profile

export PATH

umask 022

export OracLE_BASE=/opt/Oracle

export OracLE_HOME=$OracLE_BASE/product/11.2/db_1

export oracle_sid=orcl

export.UTL-8

export NLS_LANG="AMERICAN_AMERICA".ZHS16GBK

export PATH=$OracLE_HOME/bin:$PATH

export disPLAY=:0.0

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s1.51cto.com/wyfs02/M02/97/84/wKiom1kvbVqDtikGAAAQIO908Cw429.png-wh_500x0-wm_3-wmp_4-s_3171109825.png">

6Oracle用户设置SHell限制为了优化性能,需要添加Oracle用户限制参数。进程会话限制可以采用pam_limits认证模块来实现,通过修改登录程序loginPAM设置以启用该认证。

修改/etc/security/limits.conf将用户Oracle能够打开的进程数、进程使用的文件数加在。加入如下内容:

Oracle soft nproc 2047

Oracle hard nproc 16384

Oracle soft nofile 1024

Oracle hard nofile 65536

1行是设置进程数软限制;第2行是设置进程数硬限制;第3行是设置文件数软限制;第4行是设置文件数硬限制

/etc/pam.d/login,加入如下内容

session required /lib/security/pam_limits.so

session required pam_limits.so

7、配置Oracle用户资源限制,不配置也不会影响Oracle数据库的成功安装,但是虑到若有糟糕的sql语句对服务器资源的无限占用,导致长时间对用户请求无响应,建议提前限制Oracle用户资源。

配置方法如下:

vim /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

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s3.51cto.com/wyfs02/M01/97/85/wKioL1kvbXOzMFaaAAAI4u0hP98465.png-wh_500x0-wm_3-wmp_4-s_4215166261.png">

8、解决中文乱码问题

RHel6.5中安装Oracle11g时,中文安装界面乱码,解决方法:

linux命令提示符下执行以下命令,把字体库安装到相应位置即可

注:在这里zysong.ttf包裹需要自行下载

[root@rHel1 ~]# mkdir -p /usr/share/Fonts/zh_CN/TrueType

[root@rHel1 ~]# cp /mnt/zysong.ttf /usr/share/Fonts/zh_CN/TrueType/

[root@rHel1 ~]# chmod o+r /usr/share/Fonts/zh_CN/TrueType/zysong.ttf

关闭防火墙和selinux,并设置永久ip地址和主机名

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s1.51cto.com/wyfs02/M01/97/85/wKioL1kvbYjiQdc0AAAX-Ji7Uus781.png-wh_500x0-wm_3-wmp_4-s_3951889411.png">

准备工作完成之后重新启动系统

二、正式安装Oracle

1.下载Oracle11g软件包到系统/home/Oracle

[root@rHel1 ~]# su - Oracle

[Oracle@rHel1 ~]$ ls /mnt

linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip p8670579_112010_liNUX.zip zysong.ttf

[Oracle@rHel1 ~]$ cp /mnt/linux.x64_11gR2_database_1of2.zip .

[Oracle@rHel1 ~]$ cp /mnt/linux.x64_11gR2_database_2of2.zip .

[Oracle@rHel1 ~]$

2.解压缩软件包 (压缩包可以从官方网站下载wget

[Oracle@rHel1 ~]$ unzip linux.x64_11gR2_database_1of2.zip

[Oracle@rHel1 ~]$ unzip linux.x64_11gR2_database_2of2.zip

3.授权允许用户Oracle使用图形终端,例如执行:xhost + Oracle@localhost,表示允许用户Oracle从本机访问,或者执行xhost + 表示取消所有限制,这里执行xhost +即可。

4.执行安装程序

1、配置安全更新

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s1.51cto.com/wyfs02/M02/97/84/wKiom1kvbaKCWJHrAADa64K2Uz4213.png-wh_500x0-wm_3-wmp_4-s_1807390240.png">

2、安装选项,选择“创建和配置数据库”

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M02/97/85/wKioL1kvbbXzvnfxAADCGaNPpN8760.png-wh_500x0-wm_3-wmp_4-s_2542587389.png">

7、在系统类中选择“服务器类”

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M00/97/84/wKiom1kvbcnSiUuQAAD6OtkDCtM114.png-wh_500x0-wm_3-wmp_4-s_3915779420.png">

8、网格选项中选择“单实例数据库安装

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s5.51cto.com/wyfs02/M00/97/85/wKioL1kvbdzAVXlfAADDJX8PkCI296.png-wh_500x0-wm_3-wmp_4-s_1353247359.png">

9、安装类型选择“典型安装”。如果为各种管理账号分别设置口令,或者选择语言版本,设置自动备份,存储管理等,则应选择“高级安装”。

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s1.51cto.com/wyfs02/M01/97/84/wKiom1kvbe6h_M6eAADvxg0tz4I851.png-wh_500x0-wm_3-wmp_4-s_104148137.png">

10、典型安装的配置,必须设置管理员口令,其它参数采用默认值,系统将自动创建3个用户,分别是:超级管理员syssystem和数据库所有者sysman,当选择高级安装时,可以为3个用户分别设置口令,否则将使用同一个管理口令。

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M00/97/84/wKiom1kvbgCTCCqsAAEa7d3r3d8536.png-wh_500x0-wm_3-wmp_4-s_3327757068.png">

11、创建产品清单,将清单目录修改为/opt/Oracle/oralnventory,以便Oracle用户有权限写入Oracle数据库的清单信息。

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M02/97/84/wKiom1kvbhXTyHI5AAEnPZJtywE369.png-wh_500x0-wm_3-wmp_4-s_4255187962.png">

12、先决条件检查及概要,出现下面的程序包状态失败,因为这些包是32位的包,而我们的系统是64位的,所以不用理会,点击“全部忽略”。然后点击“下一步”。

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M01/97/84/wKiom1kvbinQdAJSAAEPw-jB7Js304.png-wh_500x0-wm_3-wmp_4-s_2364298625.png">

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M01/97/85/wKioL1kvbjusnoh8AAEiJbmMf1Q625.png-wh_500x0-wm_3-wmp_4-s_1654745549.png">

可以保存响应文件,以后安装Oracle时可以使用这个脚本执行安装,就不用配置这么多了。

13、安装中......

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s5.51cto.com/wyfs02/M00/97/84/wKiom1kvbk-C7EYkAADY5qc58TE005.png-wh_500x0-wm_3-wmp_4-s_2146123288.png">

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M01/97/85/wKioL1kvbmKCNzi2AAEIrcw6fkY615.png-wh_500x0-wm_3-wmp_4-s_3901308900.png">

14、当弹出“口令管理”的窗口时,单击“口令管理”按钮,将用户scott解锁,修改完成后,单击“确定”按钮。

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s1.51cto.com/wyfs02/M00/97/84/wKiom1kvbnfSfIrxAAHjImlWlow906.png-wh_500x0-wm_3-wmp_4-s_1163468584.png">

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M00/97/84/wKiom1kvboyyVMNAAAC1EhdyfmM840.png-wh_500x0-wm_3-wmp_4-s_4099775744.png">

15、完成安装

文件复制及相关部署结束之后,会弹出“执行配置脚本”对话框,根据提示切换为root用户并以此执行脚本,如下所示。

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M01/97/85/wKioL1kvbqLCZ5iQAAC2-KpYTAY410.png-wh_500x0-wm_3-wmp_4-s_2849431683.png">

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s3.51cto.com/wyfs02/M00/97/85/wKioL1kvbrbT9crIAAEOwqDegyI879.png-wh_500x0-wm_3-wmp_4-s_2054541885.png">

最后单击“确定”按钮,会提示访问https://Oracleserver:1158/em/,使用此地址访问OEM(企业管理器)平台,以便Oracle数据库实例进行管理。

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M00/97/85/wKioL1kvbsmRq9tpAAC56VEVeQs577.png-wh_500x0-wm_3-wmp_4-s_679729779.png">

1、访问OEM平台(OEM平台可以进行图像化管理Oracle,比较方便)。

在浏览器中输入:https://Oracleserver:1158/em/,输入用户名:sys,密码pwd123,连接身份选择SYSDBA

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s5.51cto.com/wyfs02/M01/97/84/wKiom1kvbt7QymcWAACRtNRnPjY950.png-wh_500x0-wm_3-wmp_4-s_3116987368.png">

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M01/97/85/wKioL1kvbvKQYVeaAAEp8urBZOM793.png-wh_500x0-wm_3-wmp_4-s_4204141755.png">

2、使用sqlplus命令行访问Oracle数据库

首先,解决sqlplus命令行方向键不能用问题

安装过程:

[root@oradb temp]# tar -xvf rlwrap-0.28.tar

[root@oradb temp]# cd rlwrap-0.28

[root@oradb rlwrap-0.28]# ./configure

[root@oradb rlwrap-0.28]# make

[root@oradb rlwrap-0.28]# make install

这样就可以使用 rlwarp .

[Oracle@oradb ~]$ rlwrap sqlplus "/ as sysdba"

这样登录数据库,就可以使用上 下 键查找上次执行的命令.

如果每次都需要输入 rlwrap 感觉麻烦的话 ,还可以加入到 .bash_profile ,就不用每次都输入了.

alias sqlplus='rlwrap sqlplus'

alias RMAN='rlwrap RMAN'

1.在命令行界面中输入:sqlplus sys/pwd123 AS SYSDBA

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s3.51cto.com/wyfs02/M00/97/84/wKiom1kvbwjizSTYAACxWw7flqY920.png-wh_500x0-wm_3-wmp_4-s_3331343972.png">

或者:

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s1.51cto.com/wyfs02/M02/97/84/wKiom1kvbxnA9yqFAABA7zwLABM066.png-wh_500x0-wm_3-wmp_4-s_1065083315.png">

1)执行HelP INDEX命令查看所有可以使用的命令

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M01/97/84/wKiom1kvb13Rpfg_AADmRG9hhOw008.png-wh_500x0-wm_3-wmp_4-s_454155842.png">

2)执行SHOW USER可以查看当前登录的用户

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M01/97/85/wKioL1kvb53gSB4uAAAc1XljyLI077.png-wh_500x0-wm_3-wmp_4-s_4210073342.png">

3建立Oracle服务的启动脚本:(补充)

然通过各种服务组件程序能够启动、停止整个Oracle11g数据库系统,但显然还不够方便,在RHel6服务器中,更好的做法是将相关操作编写为服务脚本,交给chkconfig工具来管理,从而实现随系统开、关机自动启动、停止Oracle数据库。

vi /etc/init.d/Oracle ,输入如下内容:

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s1.51cto.com/wyfs02/M01/97/84/wKiom1kvb7LCQr0tAAFO7BP2uKk475.png-wh_500x0-wm_3-wmp_4-s_834141510.png">

拷贝到/etc/init.d下,并设置权限。

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M02/97/86/wKioL1kvb8bggfEZAABJKpK6dCw736.png-wh_500x0-wm_3-wmp_4-s_1231557759.png">

给脚本设置权限并添加为系统服务

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s3.51cto.com/wyfs02/M00/97/84/wKiom1kvb9ejhwDsAABd8M7hkoE404.png-wh_500x0-wm_3-wmp_4-s_3746998838.png">

添加好Oracle服务后,就可以通过脚本的start、stop、status、restart参数来控制Oracle数据库的启动、停止、查看状态、重启了。

六、常见系统控制命令

1、执行lsnrctl start命令可以启动Oracle监听器。

2、执行lsnrctl status命令可以查看Oracle监听器的状态。

3、执行emctl stop dbconsole命令可以关闭OEM管理控制台。

4、执行dbshut $OracLE_HOME命令可以停止数据库实例。

5、执行dbstart $OracLE_HOME命令可以启动数据库实例。

6、使用sqlplus命令工具时,若以超级管理员sys登录,则在sql>环境中执行STARTUP;SHUTDOWN IMMEDIATE;指令也可以启用、关闭默认的数据库实例。

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M00/97/86/wKioL1kvb-qRu29SAADJCX7TmrY143.png-wh_500x0-wm_3-wmp_4-s_61074300.png">

七:创建数据库

如果在安装Oracle产品时选择不建立数据库,那么要使用Oracle系统就必须先创建数据库,如果在安装Oracle产品时选择建立数据库,也可以再创建第二个数据库。

创建数据库有两种方法:一种通过图形界面;另一种采用create database命令,下面介绍图形界面的方法。

linux中,运行数据库配置助手(DBCA),执行$OracLE_HOME/bin目录下执行DBCA

1、执行netca启用监听的方法(如果没有启用需要做这一步)(为了使客户端能连接到Oracle实例,以及有些命令也需要启用监听)

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s3.51cto.com/wyfs02/M00/97/86/wKioL1kvb__SnZGtAAGcXu06U28901.png-wh_500x0-wm_3-wmp_4-s_204782664.png">

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s1.51cto.com/wyfs02/M00/97/84/wKiom1kvcBayYBaJAAFWR6hTdWw155.png-wh_500x0-wm_3-wmp_4-s_2143353038.png">

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M00/97/86/wKioL1kvcDfC-S-DAAEzNx0pdWQ609.png-wh_500x0-wm_3-wmp_4-s_1653166305.png">

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M01/97/86/wKioL1kvcErjuyQgAAFSsXjeO9M502.png-wh_500x0-wm_3-wmp_4-s_1679995930.png">

后面下一步即可。

或者使用命令启动监听:

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M02/97/86/wKioL1kvcGTgCLOsAACkjpdBfng794.png-wh_500x0-wm_3-wmp_4-s_2506446313.png">

1)启用监听

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M01/97/84/wKiom1kvcHqgraHvAABNzb_zKPE336.png-wh_500x0-wm_3-wmp_4-s_3287805734.png">

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s3.51cto.com/wyfs02/M00/97/84/wKiom1kvcI2zoDnEAADI6T8adZE496.png-wh_500x0-wm_3-wmp_4-s_2863345199.png">

6)使用oem如何连接不同的Oracle服务器

@H_707_2623@export oracle_sid=@H_330_2625@benet@H_174_2627@@H_32_2628@emctl status dbconsole如果没有启动则启动:emctl start dbconsole

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s5.51cto.com/wyfs02/M02/97/86/wKioL1kvcKHSSu3yAABXHcLWrNs185.png-wh_500x0-wm_3-wmp_4-s_364476327.png">

八:启动关闭数据库

1、数据库的启动

启动(startup一个数据库需要3个步骤

1)启动Oracle实例

2)由实例安装数据库

3)打开数据库

startup命令中,可以通过不同的选项来控制数据库的不同的启动步骤。

NOMOUNT选项:

nomount:已经通过参数文件知道控制文件在哪个位置,但是还没有读取控制文件。主要的作用就是启动一个实例,读取init.ora初始化参数文件,启动后台进程,初始化全局SGA

@H_879_10@mOUNT选项:

读取了控制文件,通过控制文件知道了其他文件(数据文件和日志文件),此时并没有读取数据文件和日志文件,这个状态叫@H_699_15@mount状态。启动实例并且安装了数据库,但没有打开数据库。这种打开方式常在数据库维护操作中使用,例如对数据文件更名,改变重做日志及打开归档方式等,在这种打开方式下,除了可以看到SGA系统列表以外,系统还会给出“数据库装载完毕”提示。

@H_32_2628@Open选项:

读取完控制文件之后,找到了数据文件和日志文件,数据库就处于OPEN状态了。

startupnomount|mount|open

shudownnormal|immedIEate|transactional|abort

注意:如果仅仅执行startup命令,将会完成启动实例,安装实例和打开数据库的所有3个步骤,这是系统出了可以看到前面startup mount方式下所有提示外,还会给出一个“数据库已经打开”的提示,此时,数据库系统处于正常的工作状态,可以接收用户请求。

如果使用startup nomount 命令或者startup mount命令,必须采用alter database命令执行打开数据库操作,例如:如果以startup nomount方式打开数据库,也就是说实例已经启动,但是数据库没有安装和打开,这是必须运行下面的两条命令,数据库才能正确启动。@H_32_2628@ALTER DATABASE MOUNT;

ALTER DATABASE OPEN;

如果以startup mount方式启动数据库,只需要运行下面一条命令即可打开数据库

ALTER DATABASE OPEN

2、执行startup命令

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M00/97/86/wKioL1kvcLuysv0hAACZ5-o15ZQ754.png-wh_500x0-wm_3-wmp_4-s_2187499128.png">

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M01/97/85/wKiom1kvcM2BbkuUAAApmMnilOY432.png-wh_500x0-wm_3-wmp_4-s_3291719444.png">

可以看出数据库已经打开

注意:

Oracle11g数据库在执行dbca或者调整sga后重启Oracle的时候可能会出现ORA-00845 MEMORY_TARGET not supported on this system 错误。

究其原因就是linux系统的shm的大小比SGA设置的小,造成的,距离来说,SGA设置4G,而shm可能只有1G

解决办法:

调整shm的大小,具体操作如下:

vi /etc/fstab

修改如下行的设置

tmpfs /dev/shm tmpfs defaults 0 0

改成

tmpfs /dev/shm tmpfs defaults,size=6G 0 0

保存退出

重新@H_220_2926@mountshm使其生效

@H_706_2923@mount -o remount /dev/shm

3、关闭数据库

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s5.51cto.com/wyfs02/M02/97/86/wKioL1kvcOqTKBMmAAA8rQ9fSc8321.png-wh_500x0-wm_3-wmp_4-s_4265645322.png">

4、开始startup nomount状态

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M00/97/85/wKiom1kvcQGREhCrAAB-7esUzyo393.png-wh_500x0-wm_3-wmp_4-s_2872013975.png">

可以看出现在处于STARTED状态

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s4.51cto.com/wyfs02/M00/97/86/wKioL1kvcRWygr7eAAA5LH-_uIA739.png-wh_500x0-wm_3-wmp_4-s_2138107763.png">

5、修改数据库到open状态

Oracle数据库部署s.width=650;" src="http://img.code.cc/vcimg/static/loading.png" src="https://s2.51cto.com/wyfs02/M01/97/85/wKiom1kvcS2wOd0sAACXyC44phg255.png-wh_500x0-wm_3-wmp_4-s_3516257651.png">

6、数据库的关闭

normal:这是默认选项,使用该选项时,不允许任何新的用户连接,但是允许继续当前的所有连接,只有所有用户(自愿的)退出登录时,数据库才能真正的关闭

通常,正常的数据库关闭是没有意义的,即使只剩下database control在运行,也总是存在未退出登录的用户。也许关闭一个数据库需要几天或更长的事件(如果用户一直没有自己关闭)

immediate使用这个选项时,不允许任何新的用户连接,当前的所有连接的会话都被终止。任何活动的事务都会都将回滚,随后数据库会被关闭。是一种常用的关闭数据库方式,快速关闭数据库。

transactional:使用这个选项时,不允许任何新的用户连接,没有存在于某个事务中的现有会话被终止,允许当前位于某个事务中的会话在完成该事务之后终止。一但所有会话终止,数据就会被关闭(使用shutdown immediate

abort:Oracle而言,使用这个选项相当于断电。实例被立即终止。此时,任何数据都不会被写入磁盘。但是在下一次启动数据库的时候,速度比较慢(需要实例恢复)。建议在以下情况使用这种方式。

1)数据库一直处于非正常的工作状态,不能用shutdown normal或者shutdown immediate命令关闭。

2)需要立即关闭数据库

3)在启动数据库实例时遇到问题

如果你改了忘记了,可以利用如下方法重置:@H_32_2628@1)进入@H_419_2956@cmd2@H_419_2956@sqlplus / as sysdba3@H_419_2956@alter user sys IDentifIEd by 新密码@H_419_2956@;

说明:Oracle有两种登录方式,一种是系统账户,一种是@H_419_2956@Oracle,修改@H_419_2956@sys口令的时候Oracle采用的是操作系统认证方式,当属于操作系统DBA组用户登陆到数据库服务器,那么@H_419_2956@Oracle认为这样的用户就可以授权以@H_419_2956@SYSDBA身份登录数据库,这时的用户名和密码便输什么,都能连上库,使用@H_419_2956@show user命令查看登陆用户,其实都是@H_419_2956@SYS用户。

大佬总结

以上是大佬教程为你收集整理的Oracle数据库部署全部内容,希望文章能够帮你解决Oracle数据库部署所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:网站