免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5129 | 回复: 3
打印 上一主题 下一主题

[安装配置] oracle10g 在AIX5L上安装建库 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-31 08:33 |只看该作者 |倒序浏览

Oracle10g在AIX5.3上的安装配置
2009-12-4 星期五 天气阴冷  向军
一、准备工作:
由于Oracle10g for AIX5L是64位的系统,所以,必须保证AIX是64位。所以,首先就必须确认操作系统的位数。可以用命令(#bootinfo –y 处理器位数;#bootinfo –K查看系统内核位数)进行查看。注意:在32位的CPU上不能装上64位的系统的,另外在64位的CPU小机上装了64位后的系统可以通过如下的方式来更改系统内核位数:
{1,How to Switch AIX5L from 32-bit to 64-bit:
ln -sf /usr/lib/boot/unix_64 /unix
ln -sf /usr/lib/boot/unix_64 /usr/lib/boot/unix
lslv -m hd5
bosboot -ad /dev/ipldevice
shutdown -Fr  
2, How to Switch AIX5L from 64-bit to 32-bit:
ln -sf /usr/lib/boot/unix_mp /unix
ln -sf /usr/lib/boot/unix_mp /usr/lib/boot/unix
lslv -m hd5
bosboot -ad /dev/ipldevice
shutdown -Fr
另:确定系统是否加载了64位的内核扩展,使用命令:
# genkex |grep 64
若系统加载了64位的内核扩展,将返回类似下一行的信息:
149bf58 a3ec /usr/lib/drivers/syscalls64.ext}
环境硬件平台:IBM S80   IBM FastT200   windowsXP
环境软件平台:AIX5300-09(64位内核)  IBM C++9.0   Oracle10g for AIX5L  Oracle10gclient for win32
创建必要的组合用户:
在AIX上创建oinstall 和 dba 两个非administrator身份的组。然后再创建oracle用户,使得oracle用户属于前面创建的两个组,但是首选组(primary)是oinstall。并设置好该用户的密码。至于创建的过程这里就不赘述。
创建相应的目录等:
这里所说的目录,即是说用于安装软件存放的目录和创建数据库时存放数据的目录。
如:可以创建/oracle/app/oracle目录作为存放Oracle10g for AIX5L源文件的地方;
/oracle/app/oracle/10.2.0/Db_1来作为oracle用户的主目录,用于安装软件;
            /oracledata/oracle/nbodata 来作为创建数据库时存放数据的目录。
等创建好了后就是更改这些目录的属主了:#chown –R oracle:oinstall /oracle/app/oracle
#chown –R oracle:oinstall /oracle/app/oracle/10.2.0/Db_1
#chown –R oracle:oinstall  /oracledata/oracle/nbodata
(至于更改目录的属主,大可以在创建/oracle和/oracledata后,就更改这两个的属主,然后用oracle用户登录,在这两个目录下创建后面的我们需要的目录就可以了)
最后,就是改变文件的读写属性:#chmod 775 /oracle/app/oracle
                              #chmod 775 /oracle/app/oracle/10.2.0/Db_1
                              # chmod 775 /oracledata/oracle/nbodata
(其中chmod后跟的值是可以改变的,看需要而定,最大的权限是777)
配置内核参数:(略)
配置oracle用户的环境变量:
在创建好目录后,可以再次用#smitty user进入更改用户属性,将oracle用户的HOME directory选项设置为我们创建的/oracle/app/oracle/10.2.0/Db_1
用oracle用户登录,确定当前的目录是我们指定的/oracle/app/oracle/10.2.0/Db_1目录,用vi 编辑.profile文件:
umask   022
NLSPATH=/usr/lib/nls/msg/%L/%N:/usr/lib/nls/msg/%L/%N.cat
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:/usr/java14/jre/bin:/usr/java14/bin:/usr/vacpp/bin:/usr/vac/bin
MANPATH=/usr/vacpp/man/en_US
export PATH NLSPATH MANPATH
set -o vi
export TERM=vt100
export PS1=[`whoami`@`hostname`\$PWD#]
ORACLE_BASE=/oracle/app/oracle
ORACLE_SID=nbo
ORACLE_HOME=$ORACLE_BASE/10.2.0/Db_1
PATH=$PATH:$ORACLE_HOME/bin:/usr/bin/X11/xclock
export ORACLE_BASE ORACLE_HOME PATH ORACLE_SID
文件中的ORACLE_BASE指定oracle的根目录;ORACLE_HOME指定oracle的主目录;ORACLE_SID指定oracle的SID(实例名)
退出oracle用户再次登录,是环境变量生效。
准备工作到此也就完成。
二、解压并安装oracle:
上传oracle安装源文件(10gr2_aix5l64_database.cpio.gz)到$ORACLE_BASE目录。
用root用户登录:
更改源文件属主:#chown –R oracle:oinstall 10gr2_aix5l64_database.cpio.gz
更改源文件的读写权限,可以赋给最大权限:#chmod 777 10gr2_aix5l64_database.cpio.gz
用oracle用户登录并转到$ORACLE_BASE目录下:
解压源文件:$gunzip  10gr2_aix5l64_database.cpio.gz后得到10gr2_aix5l64_database.cpio文件;
解开包:cpio –idcmv 后得到Disk1目录。
到此解压步骤完成。接下来就是安装了。但是以上的工作需要注意的是:由于文件的大小超过了1GB,所以在上传和解压的时候有可能会受到系统限制的影响,如果碰到这种情况的话,就用vi编辑/etc/security/limits文件将fsize  core  cpu三项的值都设为-1就可以了。
安装:
用X-WINDOW软件登录到服务器,
打开一个终端,以oracle用户登录。
设置环境变量:$export DISPLAY=192.168.1.102:0.0(这里的IP是本地IP并非服务器端的)
启动安装界面:转到$ORACLE_BASE/Disk1下,运行./runInstaller后,会如下图提示:
这时候,打开另一个终端窗口以root用户运行rootpre.sh(在/oracle/app/oracle/Disk1/rootpre目录下)后,在上面的画面提示中键入“y”进入安装欢迎界面:
选择Advanced Installation后单击NEXT进入:
选择Enterprise Edition后单击Product Languages 选择好语言进入:
设好后单击OK 然后单击NEXT进入:
设置好Name 和Path后单击NEXT进入检测画面:(以下的画面略掉。)带一切成功后,进入按照提示一步一步的进行,但是切记在安装的时候,我们不要选择创建数据库,我们在安装后再进行数据库的创建,不然,多少回碰到不必要的麻烦。还有就是在安装过程中,回要求以root身份运行$ORACLE_HOME目录下的root.sh 脚本,那是按照要求运行该脚本后再按提示进行安装就可以了,知道安装完成。
三、创建数据库:
下面以用DBCA工具创建通用数据库为例:
同样用X-WINDOW工具登录服务器,然后用oracle用户登录,设置好DDISPLAY环境变量后,$dbca命令进入DBCA界面:
单击NEXT进入选择创建的数据库的类型,选择General Purpose选项,单击下一步进入:
设置好Global Database Name(数据库的名称)和SID(数据库实例名),这两个名字可以一样也可以不一样,但是SID必须于环境变量中设置的SID一致。设置好后单击NEXT 进入:

设置好这些参数(看需要)后单击NEXT进入:
设置好数据库用户的密码论自己的情况而定,然后单击NEXT进入:
选择存储类型,这里我们用文件系统的形式,进入下一步:
设置好存放数据库文件的地方,这里我们用在以前建好的准备存放他的目录/oracledata/nbodata 设置好后,进入下一步:
设置好Flash Recovery Area,一般情况默认就好,进入下一步:
这里可以指定数据库建好后可以自动运行的脚本,输入脚本的路径和名字就可以,进入下一步:
可以根据情况分别设置Memory(内存)  Sizeing(块大小以及最大进程数)  Character Sets(字符设置)   Connection Mode(数据库模式设置是专用还是共享),设置好这些后,进入下一步:
将画面中的Controlfile(镜像数据文件) 以及Redo Log Groups(联机日志文件)设置好。进入下一步:
单击Finish 等待创建结束
直到成功结束。
四、配置网络
这里的网络配置,主要涉及到监听器、网络服务名、命名方法等的配置,可以使用Oracle Net Configuration Assistant、Oracle Net Manage等工具来进行配置,这里就以Oracle Net Manage工具为例进行配置。在配置之前,可以在一台与服务器网络互通的windows客户机来进行测试,首先就得在客户机上安装客户软件,在这里关于客户软件的安装以及配置就不进行叙述。
同样的用X-WINDOW工具登录服务器,以oracle用户登录,在设置好DISPLAY变量后用$netmgr命令启动Oracle Net Manage配置工具:
点击Local后可以看到配置网络服务名以及监听器的选项,配置好他们然后点击菜单栏的File然后保存即可。这里需要注意的是hostname选项可以是服务器的主机名也可以是服务器的IP地址,但是最好为服务器的IP地址,网络服务名最好设为数据库名,便于记忆。Portnumber(端口号)的设置可以采用默认,或者自定,但是有一条必须要遵守,就是要保证客户端的端口号和服务器的端口号一致,否则,无法完成监听,也就客户端和服务器端无法联机。命名方法采用本地命名即可。
对于监听器的配置,其实可以直接编辑相关的文件进行配置,文件位于$ORACLE_HOME/network/admin目录下的listener.ora和tnsnames.ora。实际上我们上面用到的图形工具的最终目的也就是修改这两个文件。还有救市在这项配置中要设置好数据库的类型是专用还是共享模式,这个视创建的数据库的类型而定。
对于监听器的启动关闭查询可以用$lsnrctl命令进入,再用他的子命令进行操作:start(启动默认监听器,后跟监听器名的话,就启动指定监听器);status(查看监听器状态);stop(关闭监听器,后跟监听器名的话,就关闭指定监听器)。
如果发生错误,根据他报告的错误信息,进行相应的更改设置即可。可以在客户端用tnsping命令来测试服务器端能否监听到客户端的请求。
配置完成后,可以根据服务器端的配置,来配置客户端的网络,然后就可以用客户端登录数据库进行相应的操作。
另外,就涉及到数据库的开启和关闭:
实际上,在创建数据库成功以后,数据库就处于开启(open)状态。下面主要描述一下通过SQL开关数据库的情况。
数据库的开启:
Oracle数据库的启动要经历3个阶段:启动实例(Start An Instance);装载数据库(Mount The Database)和打开数据库(Open The Database)。
实例的启动,当启动一个实例的时候,会读取一个参数文件,这个文件可以是初始化参数文件(PFILE)也可以是服务器端参数文件(SPFIEL)。然后根据文件中的参数分配相应大小的一片内存区域(系统全局区SGA),然后启动一些后台进程、数据库写入进程等,这些进程和内存合起来组成实例。实例启动后,数据库还没有和实例关联,所以,这个时候数据库不可访问,那么这个阶段主要是用于数据库的维护(比如重建控制文件等操作)。
装载数据库:Oracle根据参数文件中的参数找到控制文件,并打开控制文件,从中获取数据文件和联机日志文件的名字和位置。把实力和数据库进行关联。这个阶段,对于普通的用户来说,同样是不可访问的,主要也用于数据库的维护,比如恢复数据等得操作。
打开数据库:Oracle会打开数据文件和联机日志文件,这个时候,数据库可以使用,并且普通用户可以登录数据库,对数据库进行操作。
数据库启动到NOMOUNT状态(即是说只启动实例):
首先用Oracle用户登录;
启动SQL*plus,以SYSDBA的身份登录数据库:
启动数据库到NOMOUNT状态:
数据库启动到MOUNT状态:
第一种情况:从关闭状态启动到MOUNT状态:
同样先启动SQL*PLUS;然后:
第二种情况:从NOMOUNT状态启动到MOUNT状态:
启动数据库到OPEN状态:
从关闭状态启动到OPEN状态:
从MOUNT状态启动到OPEN状态:
从NOMOUNT状态启动到OPEN状态:这个时候,我们可以先将数据库从NOMOUNT状态启动到MOUNT状态,然后再从MOUNT状态启动到OPEN状态。
同样的,有时候我们需要将数据库启动到只读模式或者恢复模式又或者限制模式:
从关闭模式启动到只读模式:STARTUP OPEN read only;
从MOUNT状态启动到只读模式:ALTER DATABASE OPEN read only;
将数据库启动到恢复模式:STARTUP OPEN RECOVER;在这种情况的启动过程中,后台执行了介质恢复。
从关闭状态启动到限制模式:STARTUP RESTRICT;
从OPEN状态启动到限制模式:ALTER SYSTEM enable restricted session;
重新启动数据库:STARTUP FORCE;这个命令会执行实例恢复的过程,所以,在系统运行正常的情况下,不推荐使用这个命令。推荐用正常的顺序开关数据库。
在启动数据库的时候,同样可以指定参数文件如:STARTUP pfile=********(跟上参数文件的绝对路径)。
这里需要提到的是有时候,startup命令读取的参数文件时服务器端参数文件(SPFILE),当参数文件被破坏后,我们可以指定PFIEL参数来启动数据库,或者通过PFILE来从建SPFILE(在SQL*PLUS里面:CREATE SPFILE=’*******’ FROM PFILE=’*********’)实际上,这两个文件时可以根据彼此互相重建的。
数据库的关闭:
同样的数据库的关闭也要经历三个过程:关闭数据库(Close The Database);卸载数据库(Unmount The Database)和关闭实例(Shut Down The Instance)。
以NORMAL方式关闭数据库,这种方式不是很常用,因为如果这样关闭数据库的话,有可能有的数据库永远也不能关闭,在它的关闭过程中,允许新的用户注册数据库,要等所有的用户自动退出Oracle后,数据库才会关闭。
或者直接用SHUTDOWN命令。
以IMMEDIATE方式关闭数据库:这种方式关闭数据库的时候,新的用户不能注册数据库,未提交的事务将被回滚,数据库不会等待所有的用户退出数据库。它是最安全的关闭数据库的方式,虽然过程会有点慢。
以TRANSACTIONAL方式关闭数据库:在关闭过程中,不允许新的用户注册数据库,不允许建立新的事务,所有的事务(transactions)完成以后才关闭数据库,用户在执行完手里的事务后会被强行的断开连接。
以ABORT方式关闭数据库:直接关闭数据库,它不允许启动新的连接和新的事务,客户端的SQL语句立刻终止,未提交的事务不会被回滚,立刻终止所有的连接。只有当数据库出现问题的时候才会使用这种方式关闭数据库,是最不安全的一种关闭方式,数据库重启动的时候需要实例恢复。命令:SHUTDOWN ABOTR
数据库状态的查询:对于一个陌生的数据库,我们并不知道她处于什么样的状态,那么这个时候我们可以通过SQL*PLUS来查询。在SQL*PLUS里面通过查询v$database 和 v$instance通过查询后得到的结果来判断,命令是:SELECT open_mode FROM v$database;和SELECT status FROM v$instance;例如:

从上面得查询可以判断,这个数据库是处于OPEN状态。






由于图片没有能够显示出来,这里上传一个原文


文件:
Oracle10g在AIX5L上的安装配置.rar
大小:
1158KB
下载:
下载

文档,希望大家看后给给指点,感激不尽!!!






本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/109220/showart_2136016.html

论坛徽章:
0
2 [报告]
发表于 2010-01-05 17:11 |只看该作者
非常感谢

论坛徽章:
0
3 [报告]
发表于 2011-03-03 10:53 |只看该作者
很好,有环境的时候试一下。

论坛徽章:
0
4 [报告]
发表于 2011-08-25 15:31 |只看该作者
啥话也不说了,非常牛B的贴子。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP