oracle10g debian,Oracle10G在Debian上的安装

//转 其中出问题的地方改正一下.

Oracle10G no Debian GNU/Linux 安装手册

最近参考网络上的Oracle10G在linux上的安装,经几次的尝试终于在我的Lenovo笔记本tech Debian OS上安装成功,写个文章与大家一起分享

一、硬件平台:

Core 1.6GHzx2

硬盘 80G SATA

内存 512M

系统环境:tech Debian GNU/Linux

二、准备工作:

1.软件依赖

确保你已经安装了下列软件

make

binutils

libc6-dev

libmotif3

rpm

awk

//quesiton:需要安装gcc 和 libstdc++.so.5这个文件,libstdc++.so.5,.5是gcc3.3的标准库, gcc3.4以后便用.6版的了,而我现在新装的Debian Linux testing版默认只安装gcc4.1。于是到Debian安装盘上的/pool/main/g/gcc-3.3上libstdc++5_3.3.6- 13_i386.deb解包,再把解包所得的data.tar.gz解包,得到usr文件夹,里面的lib里便有libstdc++.so.5.0.7的库文件,把这个文件cp到系统的/usr/lib里面再改名为libstdc++.so.5

apt-get install libstkc++5另文件有单独可下,记得在linuxsir中的一个贴子在放出.

debian需要额外的做以下操作:

创建程序链接:

#ln -s /usr/bin/awk /bin/awk

#ln -s /usr/bin/rpm /bin/rpm

#ln -s /usr/bin/basename /bin/basename

2.安装JAVA平台:

请参照其它在Debian上安装j2sdk的资料。

3.统模系统:

模拟redhat-3进行安装,新建一个文件/etc/redhat-release,写入以下内容:

Red Hat Enterprise Linux AS release 3 (Taroon)

4.修改内核参数:

添加如下的行到/etc/sysctl.conf 中:

kernel.shmmax = 3147483648

kernel.shmmni = 4096

kernel.shmall = 2097152

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

注:shmmax(最大共享内存)是一个很重要参数,根据您的机器的内存来设定。

5.修改 limits.conf(资源限制)

添加下面的行到/etc/security/limits.conf 以修改你的资源限制:

oracle soft nofile 65536

oracle hard nofile 65536

oracle soft nproc 16384

oracle hard nproc 16384

让修改生效,修改了以上文件后,您必须让其生效,您重启系统,或者切换到 root 用户下用以下的方式改变内核运行参数:

#sysctl –p

二、创建用户和组

2.1添加必要的用户和组

oracle 安装需要两个 unix 用户组(oinstall,dba)和一个运行时的 oracle 用户。

确保你的系统中有以上组和用户,方法:

#grep dba /etc/group

#grep oinstall /etc/group

#grep nobody /etc/group

#id oracle

#id nobody

切换到root,添加oralce帐户

#su - root

#groupadd dba // group of users to be granted SYSDBA system privilege(组或用户授予系统数据库管理员系统特权)

#groupadd oinstall // group owner of Oracle files(oracle文件所属组)

#useradd -c "Oracle software owner" -g oinstall -G dba -d /opt/oracle oracle //(添加oracle用户)

#passwd oracle

输入oracle密码

debian中需要额外的添加nobody用户组:

#groupadd nobody

系统nogroup组中已经有nobody用户,把nobody用户添加到新建的nobody组中,

#usermod -G nobody nobody

2.2设置Oracle用户环境

以oracle用户登录:

%su – oracle

修改~/.bash_profile文件,去掉下列三行的注释符,使.bashrc文件生效:

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

# . ~/.bashrc

#fi

添加下列行到~/.bashrc:

# oracle 10g

export ORACLE_BASE=/opt/oracle/oracle

export ORACLE_HOME=/opt/oracle/oracle/product/10.2.0/db_2

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

export ORACLE_SID=orcl

# Set DISPLAY

export DISPLAY="127.0.0.1:0.0"

//apache的导出可以删掉

//安装的数据库全局ID

//这里用compiere的话后面会提示说是找不到一个文件.如果用

orcl代替的话可简化一些操作.如用compiere需要cp一个文件从

$ORCALE_HOME/...其中那个数字是随机的.如出错了.GOOGLE一

下.把那个文件CP一下就可以了.但最好把SID改为orcl

可以将这些写进.bash_profile

export ORACLE_BASE=/opt/oracle

export ORACLE_SID=orcl

unset ORACLE_HOME

unset TNS_ADMIN

umask 022

我是将上面的内容保存到另一个文件中,.bash_oracle,然后在.bashrc中使用source .bash_oracle进行调用 的。您可以根据您的好恶进行设置。您需要注意的是,ORACLE_BASE和ORACLE_HOME的设置一定得和您在前面创建的目录相符。 ORACLE_SID是默认数据库的名称,在本文档中,我们假设默认的数据库名叫compiere,如果您想用其他的名字,请您作相应的修改。(用:orcl)差点忘记,您还得把. bash_profile文件中的umask=022这一行前的注释符去掉。

设置DISPLAY

我想您肯定是不想以Oracle用户登录,启动X窗口来进行安装的啦。如果您想直接以oracle用户启动X,进行安装,您可以忽略这一步。

我们假设我们以一个普通用户james来启动gnome。那么,如果您要以oracle用户的身份来进行安装,则您必须首先启用X的TCP/IP连接。

Debian下默认关闭了TCP/IP连接,所以首先要打开X的TCP/IP连接。

在/etc/X11/xinit/xserverrc文件中,您将会看到下面这一行:

exec /usr/bin/X11/X -dpi 100 -nolisten tcp

去掉其中的nolisten,然后重启就OK了。

作为普通用户,打开TCP/IP连接后可能连不上X服务器。需要在用户的.bashrc(/home/james/)中添加下面这一行:

alias startx='startx -- -deferglyphs 16'

然后,您切换到root用户下,添加127.0.0.1的X连接权限:

shell$sudo su -

shell#xhost +127.0.0.1

然后,您就可以继续下一步啦。

请注意:如果您重启系统后,必须 再次执行

xhost +127.0.0.1

三、创建安装目录

有很多文档,建议您将 oracle 安装到一个独立的分区上面。比如:/opt。请您根据您的需要选择合适自己的安装目录。在本文档中,我们假设 Oracle 的安装目录为/opt/ora10。确保有至少 3.0G 的可用空间。

#mkdir -p /opt/oracle

#chown -R oracle

redface.gifinstall /opt/ora*

#chmod -R 775 /opt/ora*

您生成了 oracle 的运行时路径,并且授写权限给 oracle 用户,执行权限给 dba 组。

四、开始安装

安装前的准备

终于可以安装了。我们假设下载的安装文件位于/home/oracle 下,名称为名称为 10201_database_linux32.zip

解压后进入目录databases执行./runInstaller

注意请设置好java的中文显示,否则安装界面的中文都是小框框,不信试试,嘿嘿!接下的一般选择默认设置就可以了。我的环境变量是用export LC_ALL=C的所以全部是英文不存在以上问题。

这里要说一下:如果你要安装或是启动ORACLE,你应当在ORACLE这个用户下.

五、安装步骤:

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

$cd /home/oracle/databases

$./runInstaller

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

六、安装后:

1.启动数据库

o 1.启动

o $ sqlplus "/as sysdba"

将出现如下连接数据库信息:

SQL*Plus: Release 10.1.0.2.0 - Production on 星期三 3 月 24 16:23:27 2004

Copyright (c) 1982, 2004, Oracle. All rights reserved.

连接到:

Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production

With the Partitioning, OLAP and Data Mining options

SQL>

表明登录数据库系统成功,运行 startup 命令启动数据库。

SQL> startup

ORACLE instance started.

Total System Global Area 336356520 bytes

Fixed Size 279720 bytes

Variable Size 268435456 bytes

Database Buffers 67108864 bytes

Redo Buffers 532480 bytes

Database mounted.

Database opened.

SQL>

表示数据库正常启动。

o 关闭 Oracle10g 数据库

o $ sqlplus "/as sysdba" //以 sysdba 用户登录数据库

成功登录数据库系统后,运行 shudown 命令关闭数据库。

SQL> shutdown

o 启动 Oracle10g 监听程序

Oracle 的监听程序主要是为客户端的连接提供接口,在控制台窗口键入如下命令:

o $ lsnrctl

将出现如下监听程序信息:

LSNRCTL for 32-bit Windows: Version 10.1.0.2.0 - Production on 24-3 月 -2004 16:59:51

Copyright (c) 1991, 2004, Oracle. All rights reserved.

欢迎来到 LSNRCTL, 请键入"help"以获得信息。

LSNRCTL>

表明登录监听程序控制台成功,运行 start 命令启动监听程序。

LSNRCTL> start

将出现监听程序的一系列启动和配置情况信息列表。信息行的最后一行是“The command completed successfully”字样时,监听程序启动成功。

o 关闭 Oracle10g 监听程序

运行 stop 命令关闭监听程序。

o LSNRCTL> stop

运行status(查询状态)

o LSNRCTL>status

使用企业管理器

启动控制台

#emctl start dbconsole

访问数据库控制器 要提供 sys/passwd as sysdba; 你要从一个客户端浏览器访问 em 数据库控制器,必须要运行 dbconsole 进程.安装之后,dbconsole 进程是自动会启动的.然后,如果这个集成没有启动,你可以向下面的命令行手工的启动它:

#cd $ORACLE_HOME/bin

#emctl start dbconsole

这样你就可以打开 web 浏览器,输入下面的 来访问 em db control. host 那么是你的计算机的名字或地址.portnumber 是 em db control http 的端口号,这是在安装的时候指定的.默认的是 1158 ,你可以在$ORACLE_HOME/install/portlist.ini 文件中找到这个值.

如果实例启动了,EM 就会显示 db control 登录页.你必须使用授权访问 db control 的用户登录到数据库.一开始是 sys 用户,使用在安装的时候你确定的 sys 用户的密码.从 connect as 下拉框选 sysdba,然后点登录.这样就会出现 dbcontrol 的主页

启动脚本

要先改掉/etc/oratab中的那句.把"N"改成"Y"

#!/bin/bash

#

# /etc/init.d/oracledb

#

# Run-level Startup script for the Oracle Instance, Listener, and

# Web Interface

export ORACLE_HOME=/your/oracle/home/goes/here

export ORACLE_SID=oraclesidgoeshere

export PATH=$PATH:$ORACLE_HOME/bin

ORA_OWNR="oracleownergoeshere"

# 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

fi

# depending on parameter -- startup, shutdown, restart

# of the instance and listener or usage display

case "$1" in

start)

# Oracle listener and instance startup

echo -n "Starting Oracle: "

su $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl start"

su $ORA_OWNR -c $ORACLE_HOME/bin/dbstart

touch /var/lock/oracle

su $ORA_OWNR -c “$ORACLE_HOME/bin/emctl start dbconsole”

echo "OK"

;;

stop)

# Oracle listener and instance shutdown

echo -n "Shutdown Oracle: "

su $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop"

su $ORA_OWNR -c $ORACLE_HOME/bin/dbshut

rm -f /var/lock/oracle

su $ORA_OWNR -c “$ORACLE_HOME/bin/emctl stop dbconsole”

echo "OK"

;;

reload|restart)

$0 stop

$0 start

;;

*)

echo "Usage: `basename $0` start|stop|restart|reload"

exit 1

esac

exit 0

//script中有两行的引号有问题.把引号改一下.就可以.

另原脚本中无isqlplus的启动.可自行加入:

su $ORA_OWNR -c “$ORACLE_HOME/bin/isqlplusctl start”

su $ORA_OWNR -c “$ORACLE_HOME/bin/isqlplusctl stop”

如不加入从客户端浏览器中无法访问.也可以手动启动.

将这个文件放到指定的位置并让它可执行, 将它连接到所有的运行级:

#chmod 755 /etc/init.d/oracledb

#update-rc.d oracledb defaults 99

如果你希望在系统启动时启动你创建的所有数据库实例,那么需要修改 /etc/oratab 文件. 下面是一个例子:

oracle:/opt/oracle/:N

修改为

oracle:/opt/oracle:Y

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值