Oracle8i在linux下的安装(中文)


** Oracle8i在linux下的安装(中文) **

现在假设你要在Linux上安装Oracle服务器,请先过以下5关:

系统要求
规划硬盘
创建用户
创建目录
设置参数
1.系统要求
前提条件是能够安装运行Linux,然后应满足以下硬件要求:

内存 Requirements
Memory 最小要求128 MB RAM.更多(256MB+)内存可以提高性能,
更多的选件(JServer..),供多的用户需要供多的内存!!
SwapSpace 建议2倍内存
CD-ROM Oracle采用ISO 9660格式CD-ROM,下载安装可以省略。
硬盘要求- Oracle8i EE Oracle8i Client
最小 660 MB N/A
典型 811 MB 306 MB
操作系统 Linux kernel 2.2 +
操作系统联接库- GLIBC package v2.1

2.规划硬盘
对于10以下并发用户的系统,可以用一个硬盘,建立oracle分区(或目录),只要保证剩余磁盘空间1500MB+,一般就可以安装运行Oracle8(不用interMedia,JServer等较大较难选件)。
但是,如果选用Oracle8i,恐怕是为了支持更大规模的应用。与Oracle8i匹配的目前最佳的Intel硬件组合应该是:

2xCPU PIII(L440GX+主板),512MB ECC,3块SCSI硬盘(组装参考价:4万元)

3块SCSI硬盘的规划应该是:

#1 操作系统 访问少,寿命长
#2 Oracle软件
系统数据 system,tools,rbs,
temp,user等表空间
读多写少,变化不大
#3 用户数据 读写频繁,经常备份

关于容错:

三个日志文件、控制文件要分别分布在三个硬盘上
三块硬盘都有备有,或有一台备份服务器,定期更新数据
通过FTP,Samba等在网络上备份关键的数据文件。
通常的数据库应用,都是这么一种结构:

所有的数据表归dbo所有,以此用户开发程序
创建各类读写角色,授权读写部分表
创建表的同义词,通常是public synonym
创建一批数据用户,授与某种读写角色
因此,一个Oracle应用的数据通常在一个表空间->1-2个数据文件->1块硬盘!!,如果有另外的应用可再加硬盘。

3.创建用户和用户组
推荐使用图形界面的kuser工具,

即:KDE - User Manager

先建组dba,oper,

再建用户“oracle”, Shell= /bin/sh, Group=dba, Set Passwd=******

通常来说,用户“oracle”拥有数据库软件的安装、升级等管理权限。在你的Oracle8i服务器上,它甚至比root用户还重要!!! 你可以从字符界面以oracle用户登录Linux,然后运行Oracle数据库服务!这样更节省内存。

4.创建目录
推荐使用图形界面 GONE的Home Dir或KDE的File Manager,它们会更方便完成下面功能。

root 创建oracle多登录点:
root$ mkdir /u01
或者是直接做一个硬盘分区/u01

授权别人读写:
root$ chmod 755 /u01
或直接改变所有者:
root$ chown oracle.dba /u01

oracle 继续创建目录,按照Oracle习惯:
oracle$ mkdir /u01/app
oracle$ mkdir /u01/app/oracle/product/8.1.5

技巧:建立目录别名(符号连接)以便快速又好记忆:

root$ ln -s /u01/app/oracle/product/8.1.5 /ora
root$ ln -s /home/oracle /orame

5.设置参数
按照下文的内容编辑 .bash_profiile, 另存为 .profile
[oracle@lin oracle]$ more .profile

.bash_profile

Get the aliases and functions

if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

User specific environment and startup programs

PATH=$PATH:/ora/bin:$HOME/bin
BASH_ENV=$HOME/.bashrc
USERNAME="oracle"
ORACLE_HOME=/ora; export ORACLE_HOME
LD_LIBRARY_PATH=/ora/lib; export LD_LIBRARY_PATH
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_SID=ora8; export ORACLE_SID
ORACLE_TERM=386; export ORACLE_TERM
TMPDIR=/var/tmp; export TMPDIR

umask 022 (only if umask does not default to 022)

export USERNAME BASH_ENV PATH

用env检查一下参数设置:

[oracle@lin orainst0]$ env
USERNAME=oracle
ORACLE_SID=ora8
LD_LIBRARY_PATH=/ora/lib
ORACLE_BASE=/u01/app/oracle
BASH_ENV=/home/oracle/.bashrc
ORACLE_TERM=386
DISPLAY=172.17.2.22:0.0
ORACLE_HOME=/ora

接下来就可以执行安装程序了(需要KDE或AnotherLevel,目前不能从GONE安装!)

先安装jre,即JAVA Runtime Environment,版本=jre116v5,用/usr/local/jre =>指向你安装的jre116v5,然后是oracke815补丁。安装时要注意"DISPLAY"设置问题。

千万不要心急,40分钟装完基础部分,10分钟安装补丁,最后才能创建数据库!
准备软件
1)光盘安装

首先要加载光盘,可以简单地执行命令: mount /mnt/cdrom

或者使用KDE的图形界面,执行fsconf ==> Acsee local driver ==> /dev/cdrom ==> Mount !!!

这里,你也要先安装 JRE(Jave运行环境) 116v5,准备好Oracle815patch_EE(企业版补丁8/27/99 6,4M)。

2)下载方式:

一共要下载3个文件(参考:详细下载地址)

JRE 116v5,Java 运行环境(6M jre_1.1.6-v5-glibc-x86.tar.gz)
Oracle815 EE, 企业版(07/19/99 256M 815ship.tgz)
Oracle815patch_EE, 企业版补丁(08/27/99 6,4M linux_81501patch_ee.tgz)
把下载的压缩文件分别复制到一个空文件夹中,然后解压缩它:

JRE : 请试试
ftp://ftp.progsoc.uts.edu.au/pub/Linux/java/JDK-1.1.6/i386/glibc/v5/
6,292,578 jre_1.1.6-v5-glibc-x86.tar.gz
复制到空目录,然后解开,
tar -xvzf jre_1.1.6-v5-glibc-x86.tar.gz
连接/复制/改名新建的jre116v5目录为 /usr/local/jre

Oracle815 EE, 企业版

cp 815ship.tgz /home/oracle/orainst0/
cd /home/oracle/orainst0/
tar -xvzf 815ship.tgz .

Oracle815patch_EE, 企业版补丁

cp linux_81501patch_ee.tgz /home/oracle/patche/
cd /home/oracle/patche/
tar -xvzf linux_81501patch_ee.tgz .

4.执行安装程序(需要KDE或AnotherLevel,目前不能从GONE安装!)

先安装jre,即JAVA Runtime Environment,版本=jre116v5

用/usr/local/jre =>指向你安装的jre116v5

千万不要心急,40分钟装完基础部分,10分钟安装补丁,最后才能创建数据库!

安装过程:
从设置Xwindow 开始安装
推荐采用KDE界面,如果oracle用户也在服务器上登录安装, root制定Xwindow显示,我曾在安装时遇到一个"DISPLAY"设置问题。

[root@lin /root]$ xhost +172.17.2.22
172.17.2.22 being added to access control list
看到上面added信息,oracle用户可以如此开始安装:
[oracle@lin orainst0]$ ./runI*
Initializing Java Virtual Machine from /usr/local/jre/bin/jre. Please wait...

如果是远程登录到服务器上,比如从172.17.2.21执行,则应该
[oracle@lin orainst0]$ xhost +172.17.2.21
172.17.2.21 being added to access control list
当然要求事先定义DISPLAY=172.17.2.22:0.0 了:
[oracle@lin orainst0]$ DISPLAY=172.17.2.22:0.0
[oracle@lin orainst0]$ export DISPLAY
同样执行runInstaller
[oracle@lin orainst0]$ ./runI*
Initializing Java Virtual Machine from /usr/local/jre/bin/jre. Please wait...

安装选项
典型安装,最后提示DBCA数据库助理安装“不完善”,不过还可以继续使用;
最小化安装,不要试图从DBCA数据库助理生成数据库,因为还需要事先安装“补丁”;
自定义安装,如果很熟练,可以挑选部件,同样要先安装“补丁”。

安装补丁
[oracle@lin patche]$ ./linux*
这里同样有很多错误提示,它通过检查子目录文件数目来判断是否继续安装,所以你一定不要动它的文件。

几个问题----如果遇到安装问题,
请对照一下我的参数表,然后再看看我的参数文件“环境变量简要表 .profile”,它是从 .bash_profile 编辑修改过来的。
[oracle@lin orainst0]$ env
USERNAME=oracle
HISTSIZE=1000
HOSTNAME=lin.tcyy.com
LOGNAME=oracle
ORACLE_SID=ora8
HISTFILESIZE=1000
MAIL=/var/spool/mail/oracle
LD_LIBRARY_PATH=/ora/lib
ORACLE_BASE=/u01/app/oracle
TERM=ansi
HOSTTYPE=i386
PATH=/usr/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/ora/bin:/home/ora cle/bin
KDEDIR=/usr
HOME=/home/oracle
INPUTRC=/etc/inputrc
SHELL=/bin/sh
PS1=[\u@\h \W]$
USER=oracle
TMPDIR=/var/tmp
BASH_ENV=/home/oracle/.bashrc
ORACLE_TERM=386
DISPLAY=172.17.2.22:0.0
ORACLE_HOME=/ora
OSTYPE=Linux
SHLVL=1
_=/usr/bin/env

设置“环境变量简要 表 .profile”它是从 .bash_profile 编辑修改过来的。
[oracle@lin oracle]$ more .profile

.bash_profile

Get the aliases and functions

if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

User specific environment and startup programs

PATH=$PATH:/ora/bin:$HOME/bin
BASH_ENV=$HOME/.bashrc
USERNAME="oracle"
ORACLE_HOME=/ora; export ORACLE_HOME
LD_LIBRARY_PATH=/ora/lib; export LD_LIBRARY_PATH
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_SID=ora8; export ORACLE_SID
ORACLE_TERM=386; export ORACLE_TERM

TMPDIR=/var/tmp; export TMPDIR

umask 022 (only if umask does not default to 022)

export USERNAME BASH_ENV PATH

安装过程中间,它要求root用户执行 root.sh,你要先修改读写权限:
[root@lin /ora]$ chmod 750 root.sh
[root@lin /ora]$ ./root.sh

程序执行结果,生成了下面一个文件/etc/oratab:

[oracle@lin oracle]$ more /etc/oratab

*:/u01/OraHome1:N

ORCL8:/u01/OraHome1:Y

ora8:/ora:Y

它的意思是定义自动启动的名称(ora8),dbstart,dbshut也要这个参数,不然就得是用 svrmgrl 来startup。

注意为了简化目录名称,我试用了符号联接:
/ora -> /u01/app/oracle/product/8.1.5
/orame -> /home/oracle

至此,Oracle软件安装完毕,可以试着从DBCA数据库助理生成数据库了:
[oracle@lin /ora]$ ./bin/dbass*
创建数据库
说明:这里的经验是多次重装Oracle-->建库-->WebDB,细心总结的,而安装软件是很费时费事的,每次要不止6个小时。

这里先谈对几个术语的解释。
在线事务处理OLTP/决策支持,前者用于小而多实时处理,后者用于大而少的统计查询。

并发用户/并发连接, 同时连接的用户数/相同用户同时连接数。

日志文件,redolog,用于重做数据库

控制文件, control,记载运行状态。

表空间/文件/表/数据,表示oracle的数据库结构。

创建数据库
按照Oracle的说法,创建数据库有3种方法:

  1. 安装时生成
  2. 安装后使用DBCA创建
  3. 使用手工命令

具体过程(个人经验):
方法1 不行,
Oracle也说安装过程不创建数据库,只是在最后启动数据库创建助理DBCA,但你不要相信它,那也行不通,因为你必须在数据库创建之前,安装补丁,那个讨厌又必须的东西。

方法3 太难;
方法2最好!
方法2使用图形化的工具:数据库创建助理DBCA, 你可以一步步 输入或选择参数,最小化安装的时间40分钟,标准规模完全安装的时间90分钟(奔3-500/192MB内存),通常需要2个多小时。

工具用法:启动DBCA
[oracle@lin /ora] bin/dbas*

注意:自定义数据库的参数
数据库文件的位置、大小、增长方式。例如:
system = /u01/app/oracle/oradata/ora8/orasys01.dbf 188M next 100K
Users = /home/oracle/oradata/ora8/orausr01.dbf 20M next 128K

重置字符集
缺省值 = US7ASCII, 要求Windows客户端注册表与之对应, 否则乱码,
Hkey_Local_machine \Software\Oracle\NLS_Lang=American.America.US7ASCII
实际上,Oracle客户端大多是支持中文的,甚至作为了缺省值。并且,如果Oracle WebDB开发一个中文电子商务站点,你的英文不成问题;但要向一个小公司Oracle DBA新手推广WebDB作为管理工具,不能总是English面孔吧,所以应该选择中国中文国标字字符集 ZHS16GBK (中国简化汉字16位国标字库),相应的客户端配置为:
Hkey_Local_machine\Software\Oracle\NLS_Lang = SIMPLIFIED CHINESE_CHINA.ZHS16GBK ,
National Chartset 是国家语言,为Nchar等N 类型准备的。

服务器成功案例
服务器最小化安装,兼容=8.0.5,不要任何选件(Option);
最小化安装完毕,更改兼容=8.1.0,启动DBCA修改数据库,添加除了interMedia之外的4个部件(因为interMedia需要在\ora\ord\adu,..\vid中预先装入单独产品,否则提示*.sql,.plb找不到,如果你有了这些interMedia产品,可以使用DBCA修改数据库,添加这些选项,并且要事先更改兼容=8.1.5),安装成功;
自定义安装,软件系统和数据库文件分别装在不同硬盘上,并改变文件大小、增长方式, 字符集=ZHS16GBK, (Oracle 建议的中文字符集=ZHS16cGB231280), 安装成功;
WebDB成功案例
服务器字符集=US7ASCII,客户端是ZHS16GBK或WE8ISO8859P1,WebDB也算安装成功,但只能用OPERA3.6操作,附加的Simplified Chinese在微软 IE5 浏览器显示为?????乱码,我因此判断是因为 Windows.ZHS16GBK ==> Oracle.US7ASCII7bit)出错。
最小化安装,即兼容8.0.5,语言都是ZHS16GBK, 但是,不要选择任何附加语言,这时的浏览器只能显示English,不会根据浏览器缺省语言显示中文;
WebDB最理想的境界:服务器中等安装(即兼容8.1.0),C/S语言都是ZHS16GBK, 为浏览器添加附加语言Simplified Chinese, 浏览器语言显示中/英文完全正常。
一些经验
字符集要求一致,要么都是US7ASCII,要么都是ZHS16GBK。
记住:Oracle for Windows的英文字符集是WE8ISO8859P1, 而不是Oracle Server for Linux/Unix的缺省字符集US7ASCII。同样地,Oracle for Windows的重文字符集是ZHS16GBK, 而不是Oracle Server for Linux/Unix的缺省字符集ZHS16CGB231280, 但是ZHS16GBK 兼容 ZHS16CGB231280。
中文/英文字符集转换将会影响效率,最好选择完全中文。
安装WebDB时,一定要新建目录和Home,选择附加语言(Simplified Chinese)时要求字符集一致。比如你的WebDB for WinNT4英语是 WE8ISO8859P1,那么你就无法向Oracle.US7ASCII服务器添加附加语言Simplified Chinese,因为US7ASCII和WE8ISO8859P1之间只能正确交换7位字符集比如英语或法语。
下面这个想法也是行不通的:定制安装WebDB2.1,装完SqlPlus, SupportFiles, 和 Net8 后,修改字符集与数据库服务器一致,再来安装 WebDB2.1 和 Listener, 以便添加附加语言Simplified Chinese. 但是,每次当你启动安装程序时,都得设定一个字符集并同时作为变量供整个安装过程使用,所以不可能中途改变字符集并使之生效。
移植一个产品:你的Windows NT4有WebDB2.1了,但是Personal Oracle里有一个Navigator很好用, 那么你可以找到 Nav8.exe, Nav8cmd.dll, Navrsus.dll(英语支持), Navrszhs.dll(汉语支持)共4个文件复制到当前的 [OraWeb21]\bin 里来,即可使用“Oracle8导航器”了:在桌面或菜单目录中添加Nav8.exe的快捷方式。
想想看:你的Windows NT4有了Personal Oracle(只是部分产品或其他), 能不能在它的目录里再装载 WebDB服务? 哪怕不选择附加语言支持。
手工建库
重点讨论方法3:
你需要 较好的Linux和Oracle基础,或者要鼓足勇气,增加信心才行。
请参考帮助文献: [oracle@lin oracle]$ more /ora/rdbms/install/create/READ

首先定义好 ORACLE_SID,ORACLE_HOME等参数,
编写参数文件$ORACLE_HOME/dbs/init.ora
对db_name, instance_name and service_name 稍微做修改
set compatible ="8.1.5"
依次执行以下命令脚本:

crdb1.sh |
crdb2.sh |-- To create database files, data dictionary views
crdb3.sh | and add PL/SQL support
replicate.sh --- Advanced replication option
ordinst.sh |__ Oracle Intermedia
imedia.sh |
drsys.sh |__ Oracle interMedia Text
context.sh |
java.sh --- Oracle Jserver
spatial.sh --- Oracel Spatial
timeseries.sh --- Oracel TimeSeries
virage.sh --- Oracle Visual Information Retrieval
sqlplus1.sh |
sqlplus2.sh |-- Demos and SQL*Plus help tables
sqlplus3.sh |

你不必依次全部执行,我在数据库创建助理DBCA里也只是1) 2)
1)The first three scripts (crdb1.sh, crdb2.sh and crdb3.sh) would create a database and
2)the scripts sqlplus1.sh, sqlplus2.sh and sqlplus.sh would create some demo tables.

Once the database is created, you could run other scripts mentioned above to use the respective 8i feature,
3) e.g., for Jserver, run the java.sh script.
4)To enable Oracle Intermedia Text, run the scripts - drsys.sh and context.sh, in this order only.
5) Similarly, for Oracle Intermedia, run ordinst.sh followed by imedia.sh.

下面是我用 "数据库创建助理DBCA" 生成的参数文件几个参数:
[oracle@lin /ora]$ more dbs/initora8.ora
instance_name = ora8
control_files = ("/u01/app/oracle/oradata/ora8/control01.ctl", "/u01/app/oracle/oradata/ora8/control02.ctl")
processes = 50
log_buffer = 163840

audit_trail = false # 审计和interMedia 的软件系统有漏洞

rollback_segments = (r01, r02, r03, r04) // 记住去掉“#”
compatible = "8.0.5" //

根据选件内容,compatible可以是 8.1.0,8.1.5,

修改数据库方法:同样启动DBCA
[oracle@lin /ora] bin/dbas*
数据库系统管理
----启动/关闭Oracle
本文的讲述Oracle三个核心工具之一:svrmgrl ,
一、先介绍一套简便方法:使用系统命令开关数据库
二、详细介绍服务器管理核心工具svrmgrl
三、SQL*Plus 部分管理任务,测试数据库

Oracle正常工作需要启动两个服务:数据库服务器实例,数据库SQLNet8服务。
关于SQL
Net8服务的资料,请参考Lsnrctl(Net8)的相关超级联结。
一、简便方法:使用系统命令开关数据库
1)启动服务器 dbstart
2)关闭服务器 dbshut
3)网络监听服务(请参考联接)lsnrctl
1)启动服务器
[oracle@lin /ora]$ dbstart
该命令校验用户身份后,调用SVRMGR工具,完成一下工序:
启用缺省参数文件init

  1<ora8>.ora 初始化内存,登录,打开数据库。   
  2如果需要更多的控制参数,请看svrmgrl工具。   
  32)关闭服务器   
  4[oracle@lin /ora]$ dbshut   
  5该命令校验用户身份,调用SVRMGR工具,完成一下工序:   
  6SVRMGR&gt; Connected.   
  7SVRMGR&gt; Database closed.   
  8Database dismounted.   
  9ORACLE instance shut down.   
 10SVRMGR&gt;   
 11Server Manager complete.   
 12Database "ora8" shut down.   
 133)网络监听服务   
 14启动: lsnrctl start   
 15停止: lsnrctl stop   
 16二、高级工具:详细介绍 svrmgrl   
 17启动方法:   
 18[oracle@lin /ora]$ svrmgrl   
 19Oracle Server Manager Release 3.1.5.0.0 - Production   
 20Oracle8i Enterprise Edition Release 8.1.5.0.1 - Production   
 21With the Partitioning and Java options   
 22PL/SQL Release 8.1.5.0.0  Production   
 23如何获得使用帮助   
 24打入help,得到: 下面是简单的语法描述,详细资料请看Oracle Server Manager User's Guide.   
 25SVRMGR&gt; help   
 26STARTUP [DBA] [FORCE] [PFILE=filespec] [EXCLUSIVE | SHARED]   
 27[MOUNT dbname | OPEN dbname] [NOMOUNT]   
 28SHUTDOWN [NORMAL | IMMEDIATE | ABORT]   
 29MONITOR For graphical modes only, bring up a monitor   
 30ARCHIVE LOG [START] [STOP] [LIST] [NEXT] [<n>] [ALL] ['destination']   
 31RECOVER { [DATABASE [MANUAL] ] | [TABLESPACE ts-name [,tsname]] }   
 32CONNECT [username [/password] ] [INTERNAL] ['@'instance-spec]   
 33DISCONNECT   
 34SET options: INSTANCE, ECHO, TERMOUT, TIMING, NUMWIDTH, CHARWIDTH   
 35SHOW LONGWIDTH, DATEWIDTH, AUTOPRINT and for SHOW: ALL, SPOOL   
 36EXIT   
 37REM   
 38SQL statements can also be executed.   
 39以系统用户oracle登录:   
 40SVRMGR&gt; connect internal   
 41Connected.   
 42关闭数据库,现在尝试一下?!   
 43SVRMGR&gt; shutdown   
 44Database closed.   
 45Database dismounted.   
 46ORACLE instance shut down.   
 47启动数据库吧, 我想给它指定参数,并且打开:   
 48SVRMGR&gt; startup pfile=/ora/dbs/initora8.ora open ora8   
 49ORACLE instance started.   
 50Total System Global Area 23670160 bytes   
 51Fixed Size 64912 bytes   
 52Variable Size 6656000 bytes   
 53Database Buffers 16777216 bytes   
 54Redo Buffers 172032 bytes   
 55Database mounted.   
 56Database opened.   
 57测试一下啦, 先看看数据库的系统文件吧:   
 58SVRMGR&gt; select * from system.sysfiles;   
 59TSNAME FNAME BLOCKS   
 60\------------------------------ -------------------------------------------------   
 61SYSTEM /u01/app/oracle/oradata/ora8/system01.dbf 89600   
 62OEM_REPOSITORY /u01/app/oracle/oradata/ora8/oemrep01.dbf 2560   
 63RBS /u01/app/oracle/oradata/ora8/rbs01.dbf 6144   
 64TEMP /u01/app/oracle/oradata/ora8/temp01.dbf 5120   
 65USERS /u01/app/oracle/oradata/ora8/users01.dbf 5120   
 66INDX /u01/app/oracle/oradata/ora8/indx01.dbf 5120   
 676 rows selected.   
 68, 感觉不错, 我会了,谢谢。现在退出休息一下吧。   
 69SVRMGR&gt; exit   
 70Server Manager complete.   
 71三、 SQL*Plus 部分管理任务,测试数据库   
 72在你第一次使用数据库时,它的至少有两个管理员账户:   
 73sys / change_on_install, 不要像以前那样,给一个自己都不知道的口令。切记:在你安装webdb时,需要它。   
 74system / manager 系统缺省的管理员,记住再给它建造一个工具表空间,作为他的却省表空间:tools.   
 75现在试一下sqlplus   
 76[oracle@lin /ora]$ sqlplus system/manager   
 77SQL*Plus: Release 8.1.5.0.0 - Production on Sun Nov 7 10:08:30 1999   
 78SQL&gt; select * from tab;   
 79SQL&gt; select * from sys.tab;   
 80SQL&gt; exit   
 81最后提一下,Oracle+Linux 需要内存128MB,如果你运行了Apache Web进程的,那更需要内存。   
 82[oracle@lin /ora]$ free   
 83total used free shared buffers cached   
 84Mem: 192984 116904 76080 53212 5652 78064   
 85-/+ buffers/cache: 33188 159796   
 86Swap: 530104 0 530104   
 87Oracle Net8 网络配置和联接   
 881)服务器端配置Listener   
 89添加Listeners , 设置选择 DataBase Name方式,填写2个参数 { HomeDir = /ora/ , SID =ora8 }   
 902)启动Net8服务lsnrctl start   
 913)停止Net8服务lsnrctl stop   
 924)参数文件摘要   
 935)客户端配置:添加 Net Service Name ,同Windows客户端一样格式   
 941)服务器端配置Listener   
 95执行/ora/bin/netasst   
 96填写描述-&gt;首选Oracle服务:   
 97PROTOCOL = TCP   
 98HOST = 172.17.2.22   
 99PORT = 1521   
100查看生成的 Net8 Server配置文件:listener.ora   
101[oracle@lin admin]$ more listener.ora   
102# LISTENER.ORA Configuration File:/ora/network/admin/listener.ora   
103# Generated by Oracle Net8 Assistant   
104  
105LISTENER =   
106(DESCRIPTION =   
107(ADDRESS = (PROTOCOL = TCP)(HOST = 172.17.2.22)(PORT = 1521))   
108(PROTOCOL_STACK =   
109(PRESENTATION = TTC)   
110(SESSION = NS)   
111)   
112)   
113  
114SID_LIST_LISTENER =   
115(SID_LIST =   
116(SID_DESC =   
117(ORACLE_HOME = /ora)   
118(SID_NAME = ora8)   
119)   
120)   
121### 如果指明监听服务的"全局名",则有类似这一行:(GLOBAL_DBNAME = ora8)   
1222)启动Net8服务lsnrctl start   
123首先你可以这样取得帮助:   
124[oracle@lin /ora]$ lsnrctl   
125LSNRCTL&gt; help   
126然后开始启动:start   
127[oracle@lin bin]$ lsnrctl start   
128联接时,机器会逐步告诉你正在启动…,正在联接…,已经联接的状态,最后他说成功啦! 下面是一些简要信息:   
129LSNRCTL for Linux: Version 8.1.5.0.0 - Production on 19-NOV-99 22:02:54   
130(c) Copyright 1998 Oracle Corporation. All rights reserved.   
131Starting /ora/bin/tnslsnr: please wait...   
132  
133TNSLSNR for Linux: Version 8.1.5.0.0 - Production   
134System parameter file is /ora/network/admin/listener.ora   
135Log messages written to /ora/network/log/listener.log   
136Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.17.2.22)(PORT=1521))   
137(PROTOCOL_STACK=(PRESENTATION=TTC)(SESSION=NS)))   
138  
139Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.17.2.22)(PORT=1521))   
140(PROTOCOL_STACK=(PRESENTATION=TTC)(SESSION=NS)))   
141STATUS of the LISTENER   
142\------------------------   
143Alias LISTENER   
144Version TNSLSNR for Linux: Version 8.1.5.0.0 - Production   
145Start Date 19-NOV-99 22:02:54   
146Uptime 0 days 0 hr. 0 min. 0 sec   
147Trace Level off   
148Security OFF   
149SNMP OFF   
150Listener Parameter File /ora/network/admin/listener.ora   
151Listener Log File /ora/network/log/listener.log   
152Services Summary...   
153ora8 has 1 service handler(s)   
154The command completed successfully   
155以上提示说,1个服务被处理,命令成功完成。   
1563)停止Net8服务lsnrctl stop   
157最简单的方法是 [oracle@lin /ora]$ lsnrctl stop   
158有时侯,进程出了差错,tnslsnr没有响应,像WindowsNT常犯的毛病一 样,   
159这里有一个强硬的手段:先找出它的进程号,然后 kill掉!   
160[oracle@lin /ora]$ ps -ef|grep tns   
161oracle 1331 1 0 15:51 ? 00:00:00 /ora/bin/tnslsnr LISTENER -inher   
162  
163或使用更少的参数也能找到tnslsnr:   
164[oracle@lin /ora]$ ps -e   
165PID TTY TIME CMD   
1661331 ? 00:00:00 tnslsnr   
167  
168现在杀死PID = 1331的进程:   
169[oracle@lin /ora]$ kill 1331   
170LSNRCTL SVRMGRL一样,是一个服务器管理程序,有不少参数,或者说是 子程序,带星号的是一个外部程序。   
171  
172[oracle@lin bin]$ lsnrctl stop   
173LSNRCTL for Linux: Version 8.1.5.0.0 - Production on 19-NOV-99 22:02:50   
174(c) Copyright 1998 Oracle Corporation. All rights reserved.   
175  
176Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.17.2.22)(PORT=1521))   
177(PROTOCOL_STACK=(PRESENTATION=TTC)(SESSION=NS)))   
178The command completed successfully   
179  
180  
181Listeners =DataBase Name = Global DB Name =ora8, HomeDir = /ora/ ,SID =ora8   
182  
183[oracle@lin oracle]$ cd /ora/net*/ad*   
184[oracle@lin admin]$ ls   
185listener.ora namesini.sql samples sqlnet.ora   
186namesdrp.sql namesupg.sql sqlnet.fdf tnsnames.ora   
187  
188下面是在 Windwos NT/98 上远程控制 TNSLSNR 的情形(图略)   
1894)参数文件摘要   
190[oracle@lin admin]$ more /u01/app/oracle/admin/ora8/pfile/initora8.ora   
191db_name = ora8   
192instance_name = ora8 ## "事例名"是关键字   
193service_names = ora8   
194  
195control_files = ("/u01/app/oracle/oradata/ora8/control01.ctl", "/u01/app/oracle/oradata/ora8/control02.ctl")   
196db_block_buffers = 8192   
197shared_pool_size = 4194304   
198log_checkpoint_interval = 10000   
199log_checkpoint_timeout = 1800   
200processes = 50   
201log_buffer = 163840   
202  
203log_archive_start = true   
204log_archive_dest_1 = "location=/u01/app/oracle/admin/ora8/arch"   
205log_archive_format = %t_%s.dbf   
206# 切记打开回滚段   
207rollback_segments = (r01, r02, r03, r04)   
208  
209# global_names = false ### 监听服务无需指明"全局名"   
210# oracle_trace_enable = true   
211# define directories to store trace and alert files   
212background_dump_dest = /u01/app/oracle/admin/ora8/bdump   
213core_dump_dest = /u01/app/oracle/admin/ora8/cdump   
214user_dump_dest = /u01/app/oracle/admin/ora8/udump   
215db_block_size = 2048   
216remote_login_passwordfile = exclusive   
217os_authent_prefix = ""   
218compatible = "8.1.5" ## 也可以兼容 "8.0.5"   
2195)客户端网络配置   
220[oracle@lin admin]$ more tnsnames.ora   
221# TNSNAMES.ORA Configuration File:/ora/network/admin/tnsnames.ora   
222# Generated by Oracle Net8 Assistant   
223  
224使用net8助理,结果自动保存在 tnsnames.ora 中,   
225[oracle@lin /ora]$ netass* 添加Service: 名称ora8,参数如下:   
226  
227PROTOCOL=TCP HOST=172.17.2.22 PORT=1521 Oracle_SID=ora8   
228机器解释成一个Oracle服务器地址包:   
229( DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=172.17.2.22)(PORT=1521))   
230(PROTOCOL_STACK=(PRESENTATION=TTC)(SESSION=NS))   
231)   
232一般说来,客户端采用Windows9x/NT/2000,因为这里软件开发容易,程序员和工具较为普及。   
233Windows 客户端网络配置与此类似,其内容见于: \OraNT\net80\Admin\tnsname.ora   
234ORA8.WORLD =   
235(DESCRIPTION =   
236(ADDRESS = (PROTOCOL = TCP)(HOST = 172.17.2.22)(PORT = 1521))   
237(CONNECT_DATA = (SID = ora8))   
238)   
239  
240\-------------------------------------------   
241Windows2000(beta3专业版)中安装Personal Oeacle8.05时,监听服务安装失败,   
242只要理解以上oracle结构原理,可以手工复制Net8文件,修改配置:   
243copy CD-ROM\\.\NT_x86\server\lsnrctl80.exe,tnslsnr80.exe,tnsping80.exe C:\orant\bin   
244copy CD-ROM\\.\listener.ora C:\orant\net80\admin   
245我不久前有这么一次经历。   
246  
247&lt;=&gt;   
248Delphi/C++, PowerBuilder开发Oracle应用   
249  
250为什么需要多个版本? 因为可能开发新应用,也可能维护一个旧的应用。   
251  
252Delphi/C++ 开发Oracle应用的多种版本的参数对照表   
253PowerBuilder开发Oracle应用的多种版本的参数对照表(PB6为例)   
254Oracle8, MSsql7各有什么优势?   
255  
256以下特性对于10个以上的客户端/用户数很重要!   
257  
258特性\平台 Oracle8 MSSQL7   
259可移植性   
260多平台: Unix, Linux,Windows 锁定在Windows!!!   
261同义词 create public synonym emp for system.emp; ?///   
262系统日期 select sysdate from dual; select getdate();   
263select current_timestamp;   
264系统用户 select user from dual; select user_id;   
265select user_name; select suser;   
266主机id ??/ select host_id; [char8]   
267序列号 create sequence regist7 start with 10000;   
268select regsit7.nextval into :orderid from dual   
269//,可以取currval,授权其他用 ???   
270  
271\-----------------------------------------------   
272Delphi/C++ 开发Oracle应用的多种版本的参数对照表   
273配置工具:borland BDE Administrator   
274配置文件:borland Shared\BDE\idapi.cfg   
275 SQL Explorer 中新建一个别名:   
276Object ===&gt; New ... ===&gt; ORACLE ===&gt;myORACLE8   
277  
278关键参数 参数值 Oracle版本   
279DLL32 SQLORA8.DLL   
280SQLORA32.DLL ora8.x   
281ora7.x/8.x   
282VENDER INIT ORA805.DLL   
283OCI.DLL   
284OCIW32.DLL   
285ORANT.DLL ORA80x.DLL   
286ora8x   
287ora8x for Win32   
288&lt;= ora7x.dll   
289  
290其他参数 :   
291  
292如果提示供应商有问题,就复制ORA7x.dll : ORANT.DLL再试!!   
293  
294NET PROTOCOL SQL*Net1, SQL*Net2, Net8   
295SERVER NAME see TNSNAME.ORA , create by netasst   
296USER NAME exmple: SCOTT/tiger,   
297  
298\-----------------------------------------------   
299  
300PowerBuilder开发Oracle应用的多种版本的参数对照表:(PB6为例)   
301PowerBuilder6快速安装路径:CDROM:\pb6\setup   
302  
303  
304SQL*net版本 pb动态库 Profile参数名 参数值 适用Oracle版本   
305SQL*net16   
306ora7.2以前 pbOR760.dll Profile name   
307Server   
308Login ID   
309Password oracle70   
310@t:ora8   
311scott   
312tiger ora7.0   
313ora7.x/8.x   
314ora7.x/8.x   
315SQL*net32   
316ora7.x/8.x pbO7260.dll   
317pbO7360.dll Profile name   
318Server   
319Login ID   
320Password oracle73   
321@tns:ora8   
322scott   
323tiger ora7.0   
324ora7.x/8.x   
325ora7.x/8.x   
326ora8.x   
327NET8 pbO8060.dll Profile name   
328Server   
329Login ID   
330Password oracle8   
331ora8   
332scott   
333tiger   
334  
335其他参数 :   
336如果提示供应商有问题,就复制ORA7x.dll : ORANT.DLL再试!!   
337  
338NET PROTOCOL SQL*Net1, SQL*Net2, Net8   
339SERVER NAME see TNSNAME.ORA , create by netasst   
340USER NAME exmple: SCOTT/tiger,   
341  
342  
343\--------------------------------------------------------------------------------   
344Upgrade/Patch installation instructions for   
345Oracle 8i Enterprise Edition for Intel-Linux   
346\--------------------------------------------------------------------------------   
3471\. Shutdown any running database instances   
348  
3492\. Get the patch file linux_81501patch_ee.tgz   
350  
3513\. Create a directory and extract the patch file   
352mkdir orapatch   
353cd orapatch   
354tar xvzf linux_81501patch_ee.tgz   
355  
3564\. Set the environment varibale ORACLE_HOME to the location of your   
357Oracle 8i Enterprise Edition installation and run the script   
358linux_81501patch_ee.sh to apply the patch.   
359  
3605\. Startup your database instances   
361  
3626\. Please read the FAQ provided along with the patch   
363  
3647\. This patch fixes the following problems:   
365  
366955067 - LIBSKGSP8.SO NOT FOUND AS ALL USERS BUT ORACLE   
367941530 - USE OF THE SUPPLIED RELINK SHELLSCRIPT FAILS   
368960290 - 8.0.5-&gt;8.1.3 SQL*NET CONNECTION ATTEMPT DUMPS CORE   
369962324 - NETASST DOESNT RUN RETURNS TO THE UNIX PROMPT WITH NO ERRROS   
370* Last Updated 9/03/99   
371  
372I. Installation Issues----------------------   
373  
3741\. Which JRE version is required for running the Oracle Universal Installer(OUI) and where is this available ?   
375  
376Use JRE 1.1.6 v5 from http://www.blackdown.org. The JRE 1.1.7 v3 (green threads) also should work, though not tested,which is also availble from this site.   
377  
378Download and install the above mentioned JRE in any location where thereis enough disk space and create a symbolic link from /usr/local/jreto the location where JRE was installed.   
379  
3802\. On what window managers was OUI tested ?   
381  
382OUI runs on fvwm and KDE.   
383  
384There is a bug in the Enlightenment package used with GNOME on Red Hat 6.0that causes the Oracle Universal Installer (OUI) to fail. You may downloadthe RPM upgrade for the Enlightenment package,enlightenment-0.15.5-37.i386.rpm from the Red hat Errata site at http://www.redhat.com/corp/support/errata/rh60-errata-general.html.   
385  
3863\. Could not locate gmake in the installed Linux distribution.   
387  
388Make /usr/bin/gmake as symbolic link to /usr/bin/make.   
389  
390$ su - root$ cd /usr/bin$ ln -s gmake make$ exit   
391  
3924\. OUI couldn't determine the free disk space though there is enough spaceand instead displayed some warnings.   
393  
394It's a bug in the installer. Please ignore the warnings andcontinue the installation.   
395  
3965\. When OUI reached installing protocol support, an empty list boxis displayed where the network protocols should have been listed.Unable to select any protocol.   
397  
398Only the TCP/IP adapter is supported which is default and built-in, andso the screen is blank.   
399  
4006\. Just before the DB Assistant is launched, a dialog is displayed withthe warning:"JNLS Exception: oracle.ntp.jnls.JNLSException Unable to find anyNational Character Sets. Please check your Oracle installation."   
401  
402This is a known problem (884001). Ignore the warning   
403  
4047\. Which one do we install to launch dbassist - JDK or JRE ?   
405  
406Download and install JRE 1.1.6 v5 as mentioned above, before launchingthe dbassist.   
407  
4088\. While adding PL/SQL support, the DB Assistant complained thatdbmssml.sql script was missing.   
409  
410Apply patch 8.1.5.0.1 or above and launch dbassist.   
411  
4129\. While testing the database creation using the dbassist, we haveobserved that, on a 4-way SMP system, it took more than 4 hours tocreate the database, if all the options are enabled. This may affectthe performance of the machine during this time.   
413  
414You could either select the option to create scripts and run them ORuse the scripts provided in $ORACLE_HOME/rdbms/install/create to createthe database. The scripts in $ORACLE_HOME/rdbms/install/createtake ORACLE_SID as the parameter. Before running these scripts copy theinit.ora available in this directory as $ORACLE_HOME/dbs/init<sid>.oraand modify any parameters in this to suit your requirements, at a minimumchange the db_name, instance_name and service_name parameters.To enable the 8i features set the compatible parameter to "8.1.5" in theinit<sid>.ora file.   
415  
416The order in which to run these scripts is   
417  
418crdb1.sh |crdb2.sh |-- To create database files, data dictionary viewscrdb3.sh | and add PL/SQL supportreplicate.sh --- Advanced replication optionordinst.sh |__ Oracle Intermediaimedia.sh |drsys.sh |__ Oracle interMedia Textcontext.sh |java.sh --- Oracle Jserverspatial.sh --- Oracel Spatialtimeseries.sh --- Oracle TimeSeriesvirage.sh --- Oracle Visual Information Retrievalsqlplus1.sh |sqlplus2.sh |-- Demos and SQL*Plus help tablessql   
419关于jre_1.1.6-v5有多处可以下载,请试试看   
420ftp://ftp.progsoc.uts.edu.au/pub/Linux/java/JDK-1.1.6/i386/glibc/v5/   
4216,292,578 jre_1.1.6-v5-glibc-x86.tar.gz   
422下载后复制到空目录,然后解开,   
423tar -xvzf jre_1.1.6-v5-glibc-x86.tar.gz   
424复制/改名为 /usr/local/jre   
425  
426关于 Oracle8i,oracle805,WebDB,OAS,补丁下载有一个捷径,可以请试试看,如果非要这样,你也要遵守Oracle公司的协议,在OTN及其研究会注册一下。   
427  
428ftp://ftp.oracle.com/pub/www/otn/linux/   
429  
43007/20/99 12:00上午 621 815README   
43107/19/99 12:00上午 29,360,128 815ship.1   
432.....   
43307/19/99 12:00上午 22,303,468 815ship.9   
43407/19/99 12:00上午 257,184,492 815ship.tgz 企业版   
43510/28/00 04:17下午 29,360,128 815shipstd.1   
436... ...   
43710/28/00 04:19下午 27,955,443 815shipstd.9   
43810/18/00 05:31下午 262,836,467 815shipstd.tgz 标准版   
43903/01/99 12:00上午 171,305,412 Oracle8051EE_Intel.tgz   
44006/02/99 12:00上午 3,281 README   
44108/27/00 11:27上午 6,419,391 linux_81501patch_ee.tgz 企业版补丁   
44202/05/99 12:00上午 794,538 lnxpatch.tgz   
44302/03/00 10:29上午 Directory oas   
44408/06/99 12:00上午 283,567,537 oas407ship_tar.gz 应用服务器   
44501/31/00 12:35下午 Directory webdb   
44608/02/99 12:00上午 92,069,519 webdb2_0_0528_tar.gz 万维网数据库   
447\-------------------------------------------------------------------   
448  
449下载方式,可以在windows进行,通过刻录光盘、FTPSamba、兼容磁盘分区等方式,让Linux读到。</sid></sid></n></ora8>
Published At
Categories with 数据库类
Tagged with
comments powered by Disqus