设为首页 收藏本站
查看: 379|回复: 0

[经验分享] Linux下Oracle 10 g的安装

[复制链接]

尚未签到

发表于 2016-2-24 08:57:19 | 显示全部楼层 |阅读模式
资源需要:

至少1024 MB物理内存

1024-2048 需1.5倍的交互空间

2048-8192 需1倍的交互空间

8192-     需0.75倍的交互空间

至少400 MB /tmp 临时目录空间

oracle软件需要1.5 GB 到 3.5 GB 磁盘空间

默认数据库需要1.2 GB

查看系统资源相关语句:

cat /etc/issue

uname -r

grep MemTotal /proc/meminfo

grep SwapTotal /proc/meminfo

grep "model name" /proc/cpuinfo

free

df -k /tmp

df -k

安装前的检查和准备工作:

p4198954_21_linux.zip 在运行 runInstaller 之前打.

rpm -ivh compat-oracle-rhel4-1.0-5.i386.rpm     (p4198954_21_linux.zip)

(不打PATH也可以)

安装 libaio-0.3.102-1.i386.rpm 和libaio-devel0.3.102-1.i386.rpm

  在Red Hat Enterprise Linux 介质的第三张 CD

  以 root 用户身份运行以下命令:

rpm -ivh /mnt/cdrom/RedHat/RPMS/ libaio-0.3.102-1.i386.rpm

创建数据库安装的准备工作:

1,创建user/group;

groupadd dba

groupadd oinstall

useradd oracle -g oinstall -G dba

passwd oracle

如果nobody用户不存在(id nobody命令查看),则创建:

useradd nobody

2,建立oracle安装文件夹(sample);

mkdir -p /opt/oracle/product/10g

mkdir /opt/oracle/database

chown -R oracle.oinstall  /opt/oracle

chmod 755 -R /opt/oracle

2, 配置环境变量;

要使用 Oracle 产品,应该或必须设置几个环境变量。

如果您在同一服务器上安装了多个 Oracle 产品或数据库,则 ORACLE_HOME、ORACLE_SID 和 PATH 变量可能会更改。

ORACLE_BASE 变量不应更改,并可以在需要时在您的登录配置文件中设置它。Oracle 提供了一个称作 oraenv 的实用程序来设置其他变量。

对于数据库服务器,建议设置以下环境变量:

使用Oracle用户登陆:

su oracle

vi ~/.bash_profile

以下是配置文件的内容

export ORACLE_BASE=/opt/oracle/

export ORACLE_HOME=/opt/oracle/product/10g

export ORACLE_SID=ge01

export PATH=$ORACLE_HOME/bin:$PATH      

# 安装好后再取消屏蔽这些环境变量设置

# export TNS_ADMIN=$ORACLE_HOME/network/admin

#export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

#export LANG=AMERICAN_AMERICA.ZHS16GBK

配置好后用 source .bash_profile 命令使配置生效   

4, 设置系统参数;

Oracle 数据库 10g 需要以下所示的内核参数设置。

其中给出的是最小值,因此如果您的系统使用的值较大,则不要更改它。

切换到root用户:

su root

a) 修改/etc/sysctl.conf(vi /etc/sysctl.conf), 添加:

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.shmall = 2097152

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

net.core.rmem_default=262144

net.core.rmem_max=262144

net.core.wmem_default=262144

net.core.wmem_max=262144

修改后运行"/sbin/sysctl -p"命令使得内核改变立即生效;

B) 设置oracle对文件的要求:

编辑文件:vi /etc/security/limits.conf 加入以下语句:

oracle           soft    nproc           2047

oracle           hard    nproc           16384

oracle           soft    nofile          1024

oracle           hard    nofile          65536

编辑文件:vi /etc/pam.d/login 加入以下语句(可能应该加在最后一条规则之前):

session    required     /lib/security/pam_limits.so

解压缩Oracle10G的安装文件 :

1. Oracle

(1) 简化过程(以oracle登录,释放安装文件,使用更少的磁盘空间,速度更快)

在/tmp下解压缩10201_database_linux32.zip:

unzip 10201_database_linux32

开始安装oracle

(一)开始安装:

1.以oracle用户登录系统,进行Oracle的安装:

cd /tmp/database (或者你解压缩安装程序包的目录)

./runInstaller

过一会儿就会出现Oracle的安装界面

注意:

1、选择advance install

2、数据库home设置为/opt/oracle/product/10g

3、数据库全局名称设置为ge01

4、数据库字符集选Simplified Chinese ZHS16GBK

2.其他用默认设置!

注意:安装过程中会提示以root用户登陆执行一些脚本 ,执行后再按“ok”按钮继续安装。

3、登陆并启动数据库的操作。

[oracle@oracle oracle]$ lsnrctl start

[oracle@oracle oracle]$ sqlplus /nolog

SQL*Plus: Release 9.2.0.0 - Production on Sat Mar 12 22:58:53 2005

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL> connect / as sysdba

Connected.

SQL> shutdown immediate 关闭数据库 (OR "dbshut" command)

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup; 启动数据库

ORACLE instance started.

Total System Global Area 236000356 bytes

Fixed Size 451684 bytes

Variable Size 201326592 bytes

Database Buffers 33554432 bytes

Redo Buffers 667648 bytes

Database mounted.

Database opened.

4, dbstart脚本修改

数据库创建完成后,修改vi /etc/oratab,把orcl:/opt/oracle/oracle/product/10g:N那一行最后的N改成Y,

然后执行dbstart启动数据库数据库可能无法启动,报告Can’t find init file …的错误,需要复制一个初始化文件:

cp /opt/oracle/admin/ge01/pfile/init.ora.* /opt/oracle/product/10.2.0/dbs/initge01.ora

重新执行dbstart就可以了。

修改vi /opt/oracle/product/10g/bin/dbstart中ORACLE_HOME_LISTNER=/opt/oracle/oracle/product/10g/

vi /etc/rc.local 加入下面一行 起动ORACLE ON system boot

/opt/oracel/product/10g/bin/dbstart

5. 编写启动脚本(OPTION)

为了方便管理,可以写一个启动脚本ora10g:

以root身份进入,编写以下脚本:

#!/bin/bash

#

# chkconfig: 2345 91 19

# description: starts the oracle listener and instance

status() {

    pid=`ps -ef | grep ora_pmon | grep -v grep | awk '{print $8}'`

    if [ "X$pid" = "X" ]

    then

        echo "oracle10g is not running."

        exit 1

    else

        echo "oracle10g is running."

        exit 0

    fi

}

case "$1" in

    start)

        #startup the listener and instance

        echo -n "oracle begin to startup: "

        su - oracle -c "lsnrctl start"

        su - oracle -c dbstart

        echo "oracle10g started"

        ;;

    stop)

        # stop listener, apache and database

        echo -n "oracle begin to shutdown:"

        su - oracle -c "lsnrctl stop"

        su - oracle -c dbshut

        echo "oracle10g shutdowned"

        ;;

    reload|restart)

        $0 stop

        $0 start

        ;;

    'status')

        status

        ;;

     *)

        echo "Usage: ora10g [start|stop|reload|restart]"

        exit 1

esac

exit 0

存为ora10g后,然后

chmod a+x ora10g

ln -s /opt/oracle/product/10.2.0/bin/ora10g /etc/rc.d/init.d/

即可在以后以root身份运行/etc/rc.d/init.d/ora10g start |stop 来管oracle的启动和停止了。

如果要将这个脚本加入到系统中使其可开机运行,那么要运行以下命令:

chkconfig --level 345 ora10g on

或者可在/etc/rc.d/rc.local中加入如下:

su - oracle -c "lsnrctl start"

su - oracle -c "dbstart"

6, 关于数据库删除重新安装的问题:

把ORACLE安装目录删除及/etc/ora*.*删除就行了

#rm –f /etc/ora*.*

7.修改Oracle10g数据库字符集

SQL> connect sys/oracle as sysdba

SQL> startup mount

SQL> alter session set sql_trace=true;

Session altered.

SQL> alter system enable restricted session;

System altered.

SQL> alter system set job_queue_processes=0;

System altered.

SQL> alter system set aq_tm_processes=0;

System altered.

SQL> alter database open;

Database altered.

SQL> set linesize 120;

SQL> alter database character set zhs16gbk;

alter database character set zhs16gbk

*

ERROR at line 1:

ORA-12712: new character set must be a superset of old character set

SQL> ALTER DATABASE character set INTERNAL_USE zhs16gbk; # 使用INTERNAL_USE可以跳过超集的检查,ALTER DATABASE character set INTERNAL_USE

Database altered.

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> STARTUP

SQL> select name,value$ from props$ where name like '%NLS%';

NLS_CHARACTERSET

ZHS16GBK

8. oracle database备份

(1)vi bachupDb.sh

#!/bin/sh

#oracle用户下

#crontab -e 增加 "35 4 * * * /home/oracle/dbbackup/backupDb.sh",保存后自动安装

#或echo "35 4 * * * /home/oracle/dbbackup/backupDb.sh" > backupDb.cron

#crontab backupDb.cron

#############

#@tip 修改为本机数据库home目录

export ORACLE_HOME=/opt/oracle/product/10g

export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin

# 注意字符集必须和数据库的字符集一致,以避免字符集转化失败

export NLS_LANG=AMERICAN_AMERICA.zhs16gbk

#@tip 125修改为要备份的oracle的ip地址的最后一段

dmpfile="`echo ~/`dbbackup/gedb_`date +%w`.dmp"

logfile="`echo ~/`dbbackup/gedb_`date +%w`.log"

if [ -w $dmpfile ]

then

  echo "rm -f $dmpfile"

  rm -f "$dmpfile"

fi

#@tip ip地址修改为要备份的oracle的主机地址

exp USERID=gedb/gedb@10.248.1.5/ge01 file=$dmpfile log=$logfile  owner=gedb grants=y

  (2)copy bachupDb.sh 到slave oracle srever 相应目录,

     chown oracle.oinstall bachupDb.sh

     chmod 744 bachupDb.sh   

     vi bachupDb.sh 以符合安装情况

(3)以oracle user role

    crontab -e

    35 4 * * * /home/oracle/dbbackup/backupDb.sh

9. restore oracle backup

su - oracle

imp USERID=gedb/gedb file=gedb_6.dmp log=implogfile  commit=y  grants=y full=y

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-182046-1-1.html 上篇帖子: Linux下配置DNS服务器 下篇帖子: linux下top命令参数详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表