oracle安装过程中出现的问题

Michael_Shi2008 2009-07-10 09:20:37
oracle安装的过程中出现些问题,检查安装环境时出现两个问题,一个是交换区不够,网上说没问题,还有一个是网咯配置需求没执行(我装的英文版,估计应该这么翻译吧)我点掉了。
安装时我没有建库,安装完成后用BDCA建库,但是跳出好多提示:
ora-12546 tns:permission denied
请各位高手帮帮忙~是不是跟我网络配置不对有关系啊~~
...全文
530 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
Michael_Shi2008 2009-07-13
  • 打赏
  • 举报
回复
安装文档


1.1 操作系统版本
Red hat AS 4u2 x86_64
1.2 数据库版本
Oracle.10g.10201_database_linux_x86_64

1.3 其他
binutils-2.15.92.0.2-15.x86_64.rpm
compat-oracle-rhel4-1.0-5.i386.rpm
2. 说明:
# -> root的shell
如果命令以“#”开头,表示以root用户执行。

$ -> oracle的shell
如果命令以“$”开头,表示以oracle用户执行。

文档大部分内容参考了http://bbs.chinaunix.net/viewthread.php?tid=748627 ,并结合自身的安装过程做了修改。
3. 安装操作系统
为了避免缺失Oracle所需的软件,操作系统建议采用完全安装的形式,并且关闭防火墙。
4. 系统设置
4.1 配置 Linux 内核参数
Oracle 数据库 10g 需要以下所示的内核参数设置。其中给出的是最小值,因此如果您的系统使用的值较大,则不要更改它。

(以root用户)修改/etc/sysctl.conf,加入以下内容
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
#semaphores: semmsl, semmns, semopm, semmni
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

存盘退出后运行这个指令检查是否设置正确:
#sysctl –p
(如果配置写得不正确,会报错。)
4.2 为 oracle 用户设置 Shell 限制
Oracle 建议对每个 Linux 帐户可以使用的进程数和打开的文件数设置限制。
(以root用户)修改/etc/security/limits.conf,加入以下内容
* soft nproc 16384
* hard nproc 16384
* soft nofile 65536
* hard nofile 65536

存盘退出。
4.3 (以root用户)修改/etc/pam.d/login,加入以下内容
session required /lib/security/pam_limits.so

存盘退出

4.4 (以root用户)修改 /etc/selinux/config
将SELINUX的值设为disabled,如果文件中没有SELINUX则将“SELINUX=disabled
”(不包含引号)添加在文件最后

存盘退出

4.5 (以root用户)检查安装oracle10g的依赖包是否存在,如没有则安装:
#rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils compat-db control-center gcc gcc-c++ glibc glibc-common gnome-libs libstdc++ libstdc++-devel make pdksh sysstat xscreensaver libaio

正常的检查结果是:
binutils-2.15.92.0.2-13.0.0.0.2 (x86_64)
compat-db-4.1.25-9 (i386)
compat-db-4.1.25-9 (x86_64)
control-center-2.8.0-12.rhel4.2 (x86_64)
gcc-3.4.4-2 (x86_64)
gcc-c++-3.4.4-2 (x86_64)
glibc-2.3.4-2.13 (i686)
glibc-2.3.4-2.13 (x86_64)
glibc-common-2.3.4-2.13 (x86_64)
gnome-libs-1.4.1.2.90-44.1 (x86_64)
libstdc++-3.4.4-2 (i386)
libstdc++-3.4.4-2 (x86_64)
libstdc++-devel-3.4.4-2 (i386)
libstdc++-devel-3.4.4-2 (x86_64)
make-3.80-5 (x86_64)
pdksh-5.2.14-30.3 (x86_64)
sysstat-5.0.5-1 (x86_64)
xscreensaver-4.18-5.rhel4.9 (x86_64)
libaio-0.3.103-3 (i386)
libaio-0.3.103-3 (x86_64)

!!! 注意(一):
Redhat AS4.02 x86_64,默认安装的是binutils-2.15.92.0.2-15.x86_64.rpm,这个版本会引起oracle安装失败!
应另外下载binutils-2.15.92.0.2-13.0.0.0.2.x86_64.rpm并强行安装。
#rpm -Uvh --force binutils-2.15.92.0.2-13.0.0.0.2.x86_64.rpm

compat-oracle-rhel4-1.0-5.i386.rpm
#rpm -ivh compat-oracle-rhel4-1.0-5.i386.rpm
(这个包不一定需要,为了保险还是安装上吧。)

4.6 (以root用户)设定gcc版本关系
#cd /usr/bin
#mv gcc gcc.script
#mv g++ g++.script
#ln –s gcc32 gcc
#ln –s g++32 g++

5. 创建oracle所需的组、用户,设定oracle用户环境变量
5.1 (以root用户) 创建oracle所需的组
创建用于安装和维护 Oracle 10g 软件的 Linux 组和用户帐户。用户帐户将称为 oracle,而组将称为 oinstall 和 dba。
以 root 用户身份执行以下命令:
#groupadd dba
#groupadd oinstall
#useradd -g oinstall -G dba -m oracle

设置 oracle 帐户的口令:
# passwd oracle

5.2 (以root用户) 创建oracle安装所需的目录
以下假设在根文件系统中创建目录。这样做是为了简便起见,不建议将其作为通用做法。这些目录通常被创建为单独的文件系统。
以 root 用户身份执行以下命令:
# mkdir -p /u01/app/oracle
# mkdir -p /u02/oradata
# chown -R oracle:oinstall /u01/app/oracle /u02/oradata
# chmod -R 775 /u01/app/oracle /u02/oradata

5.3 (以oracle用户)修改oracle用户的环境变量
这一步操作需要从root转换为oracle用户,执行如下命令
#su – oracle
然后就可以修改oracle的环境变量了。
$vi /home/oracle/.bash_profile
在.bash_profile加入以下内容:
#--------------------------------------
# Set for Oracle10g Install |
#--------------------------------------
trap " " 0 1 2 3 5 9 15
trap clear 0
export TMP=/tmp;
export TMPDIR=$TMP;
export ORACLE_BASE=/u01/app/oracle;
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db;
export ORACLE_SID=pdbxx;
export ORACLE_TERM=xterm;
export PATH=/usr/sbin:$PATH;
export PATH=$ORACLE_HOME/bin:$PATH;
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;
export LD_ASSUME_KERNEL=2.6.9;
export NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
ulimit -c unlimited

LANG=zh_CN.GB18030
LANGUAGE=zh_CN.GB18030:zh_CN.GB2312:zh_CN
LANGVAR=zh_CN.GB18030

#
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
#------------------- Set Over

修改完成以后运行这个指令使变量生效:
$source /home/oracle/.bash_profile

!!! 注意(二):
有可能在刚才的指令运行后系统提示ulimit无效,权限不够。可以使用root权限修改/etc/profile文件来运行。
$su - root
#vi /etc/profile
在末尾添加:
#---- for Oracle 10g install
LC_CTYPE= zh_CN.GB18030
LC_ALL=zh_CN
LANG= zh_CN.GB18030
export LC_CTYPE LC_ALL LANG
#----
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
存盘退出,然后使用root帐户运行:
#source /etc/profile
重新回到oracle帐号下:
#su - oracle
$

5.4 (以root用户)修改系统配置
打开一个shell窗口,su到root,执行这个指令:
#xhost +
access control disabled,clients can connect from any host
表示现在可以使用x方式安装oracle了。

6. 安装oracle
6.1 (以oracle用户)解压缩oracle安装文件
在/home/oracle/路径下新建software文件夹用来存放oracle安装文件。
$cd /home/oracle
$mkdir software
然后将oracle安装文件存放进去(可以通过ssh的方式,或者用优盘copy)
下一步是解压缩安装文件
$cd /home/oracle/software
$ls
10201_database_linux_x86_64.cpio.gz
$gunzip 10201_database_linux_x86_64.cpio.gz
$cpio -idmv < 10201_database_linux_x86_64.cpio
完成后会生成一个database文件夹。
(注意:检查一下database的所属是oracle,用户组是oinstall,如果不是,请修改。
我就是因为没有注意这个安装出现了错误。)
6.2 (以oracle用户) 启动 Oracle 通用安装程序
$cd /home/oracle/software/database/
$ ./runInstaller

下面是安装过程,注意根据不同的情况,安装过程略有不同。这里演示的仅仅是我安装的过程。
第一步:选择高级安装。


第二步:选择默认就可以了。(这一步,oracle需要创建oraInventory目录,如果oracle用户没有权限创建,安装过程就会弹出一个框,提示用户以root身份执行一段脚本。)

第三步:选择“企业版”


第四步:oracle根据用户环境变量,已经识别出安装路径了,选择默认就行。


第五步:这一步oracle检查安装环境,如果顺利应该是没有警告的,我安装的过程中出现了一个交换分区不够大的警告,影响不大。

第六步:选择“仅安装数据库软件”

第七步:显示安装摘要,检查一下,没有问题就可以开始安装了。


第八步:安装的过程需要以root的身份执行两个脚本。

执行脚本1:
#/u01/app/oracle/oraInventory/orainstRoot.sh
更改权限/u01/app/oracle/oraInventory 到 770.
更改组名/u01/app/oracle/oraInventory 到 oinstall.
脚本的执行已完成

执行脚本2:
#/u01/app/oracle/product/10.2.0/db/root.sh
Running Oracle10 root.sh script...

The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/10.2.0/db

Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...


Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.

第九步:安装顺利完成。


7. 手动建库
7.1 (以oracle用户) 使用dbca进行手动建库
$dbca
在弹出的对话面板中选择 创建数据库 - >一般用途 -> 在全局数据库名中输入
pdbxx
//这个是我们在oracle的.bash_profile中设定好了的(export ORACLE_SID=pdbxx),当然如果你设定了另外的SID,这里就要输入同样的字符。下面SID会自动同步输入。

一直“下一步”。直到没有“下一步”可按了。这时按“完成”(我偷懒了)。应该会出现正在建库的进度条。
(注意:创建数据库时指定字符集选择支持多语言核心字符集(AL32UTF8),这样就可以支持中文了。)

!!! 注意(三):
如果刚才安装前没有设定好gcc的关系,这时很可能进度没反应了。没有弹出面板,没有进度条。等再久也没用。。。
这时可以选择取消,然后我们来做一些补救措施。
1. 打开一个shell,转到root帐号并执行这些指令:
#cd /usr/bin
#mv gcc gcc.script
#mv g++ g++.script
#ln -s gcc32 gcc
#ln -s g++32 g++

2. 回到oracle帐号下,执行这个指令:
$cd $ORACLE_HOME/bin
$relink all
一片哗哗哗的滚动提示过后,再重新执行7.1)的步骤,使用dbca指令建库。
------------------------------------------------------------------
!!! 注意(四):
如果你使用iptables做防火墙,这时要为oracle开放一些端口,以便管理:
#vi /etc/sysconfig/iptables
插入这些:
#------- For Oracle port
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1158 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1521 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5560 -j ACCEPT
#-------------------------
退出后执行这个指令:
#service iptables restart

wuxinbaicai 2009-07-12
  • 打赏
  • 举报
回复
oracle是什么版本的?
meditatorx 2009-07-12
  • 打赏
  • 举报
回复
网络配置可以不用管的,按照默认设置即可
javenzhen 2009-07-11
  • 打赏
  • 举报
回复
你把你的安装文档贴出来看下,是哪个步骤有问题
javenzhen 2009-07-11
  • 打赏
  • 举报
回复
你的oracle是什么版本
Michael_Shi2008 2009-07-11
  • 打赏
  • 举报
回复
你是指admin那个文件夹吗?
我以前没用过linux,呵呵,第一次接触,装这个也不太懂,希望大家指教,呵呵
Michael_Shi2008 2009-07-11
  • 打赏
  • 举报
回复
RedHat AS4 64位的系统
Michael_Shi2008 2009-07-11
  • 打赏
  • 举报
回复
哪个安装目录需要删除呢?
阿三 2009-07-10
  • 打赏
  • 举报
回复
交换区设的大点,然后环境变量是否设置好,相关的目录权限是否设置好.
csuxp2008 2009-07-10
  • 打赏
  • 举报
回复
帮顶
hellangel_liang 2009-07-10
  • 打赏
  • 举报
回复
是的哦,什么系统???unix开始要建用户和设环境变量的 还有权限
redpichao 2009-07-10
  • 打赏
  • 举报
回复
我建议把安装目录删除就得,其他的不改。
交换空间是内存的2倍即可。
安装时候建库和不建库,和网络没关系,提示可以直接打勾。
网络部分是使用的时候才有关系。
Michael_Shi2008 2009-07-10
  • 打赏
  • 举报
回复
相关的目录都设置权限了(建立的安装目录,设置了database的权限)其他环境变量都是按网上的安装文档改的,不知道哪还有
问题~
安装文档上没看到上面有关于网络的配置啊

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧