命令行 安装 oracle 10g

[1]

http://www.google.com.hk/search?hl=en&source=hp&q=%E5%91%BD%E4%BB%A4%E8%A1%8C+%E5%AE%89%E8%A3%85+oracle+10g&aq=f&oq=&aqi=

[2]

http://space.itpub.net/9880886/viewspace-444266

Oracle 10g支持在命令行下用静默模式(Silent)安装,给那些没有安装图形界面的Linux系统提供了极大的便利。
下面以Fedora Core 6为例,介绍在命令行下安装OracleOracle 10g的方法。

http://www.myhpf.co.uk/banner.asp?friend=295311
1 安装前的准备
准备工作要用登录为root用户来进行。
1.1 选择安装环境的语言
Oracle安装时可以通过环境变量LANG指定安装语言,如果Linux命令行不能显示中文,就要将语言环境设置为英语。
例如:export LANG=en_US.UTF-8
1.2 修改gennttab
Oracle 10g在一些Linux系统下安装可能会被中断,在安装日志文件
$ORACLE_HOME/install/make.log
里可以看见以下错误信息
/bin/sed: -e expression #1, char 7: unterminated `s' command
要解决这个问题就必须编辑文件 gennttab。
先解压Oracle安装目录下的
stage/Components/oracle.network.rsf/10.2.0.1.0/1/DataFiles/filegroup6.jar,可以用以下方法之一进行解压
用jar解压:jar -xf filegroup6.jar bin/gennttab
用unzip解压:unzip filegroup6.jar bin/gennttab
再用文本编辑器(例如vi)打开解压出来的 gennttab,将以下内容
LIB=`$ECHO ${TtoLIB} | $SED 's/ /\\ /g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
INI=`$ECHO ${TtoINI} | $SED 's/ /\\ /g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
BAS=`$ECHO ${TtoBAS} | $SED 's/ /\\ /g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
改为
LIB=`$ECHO ${TtoLIB} | $SED 's/ /\n/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
INI=`$ECHO ${TtoINI} | $SED 's/ /\n/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
BAS=`$ECHO ${TtoBAS} | $SED 's/ /\n/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
保存后再用将gennttab更新到filegroup6.jar里面,可以用以下方法之一进行更新
用jar更新:jar -uvf filegroup6.jar bin/gennttab
用zip更新:zip -vu filegroup6.jar bin/gennttab

1.3 修改内核参数
编辑文件 /etc/sysctl.conf,修改以下项目,如果没有可以自己添加。
kernel.shmall = 2097152 # 可以使用的共享内存的总量。
kernel.shmmax = 2147483648 # 最大共享内存段大小。
kernel.shmmni = 4096 # 整个系统共享内存段的最大数目。
kernel.sem = 250 32000 100 128 #
每个信号对象集的最大信号对象数;系统范围内最大信号对象数;每个信号对象支持的最大操作数;系统范围内最大信号对象集数。
fs.file-max = 65536 # 系统中所允许的文件句柄最大数目。
net.ipv4.ip_local_port_range = 1024 65000 # 应用程序可使用的IPv4端口范围。
net.core.rmem_default = 1048576 # 套接字接收缓冲区大小的缺省值
net.core.rmem_max = 1048576 # 套接字接收缓冲区大小的最大值
net.core.wmem_default = 262144 # 套接字发送缓冲区大小的缺省值
net.core.wmem_max = 262144 # 套接字发送缓冲区大小的最大值
注:内核参数并非必须修改,可以根据自己实际情况而定。
1.4 为Oracle创建DBA组和用户
安装Oracle必须指定拥有DBA权限的组和运行Oracle的用户。
创建组:groupadd oradba
创建用户:useradd -g oradba oracle

注:组名和用户名可以任意指定,不一定要照搬本文。
1.5 创建安装Oracle的目标目录
创建Oracle系统目录:mkdir /oracle
创建Oracle服务器主目录:mkdir /oracle/10g
将该目录的所有者设置为oracle:chown oracle /oracle -R
编辑 /etc/profile,在后面追加以下两行
export ORACLE_BASE=/oracle
export ORACLE_HOME=/oracle/10g

注:安装Oracle的目标目录可以任意指定,但是安装和运行Oracle的用户必须有完全修改该目录的权限。
2 安装
2.1 编辑安装需要的应答文件
静默模式(Silent)安装必须指定一个应答文件来完成安装过程所须的各类参数。
在Oracle安装目录的response子目录里有enterprise.rsp有enterprise.rsp、standard.rsp和custom.rsp三个应答文件,分别对应企业版、标准版和定制的安装。
以enterprise.rsp为例,用任意的文本编辑器打它,修改以下这些项目的值。
ORACLE_HOME Oracle服务器的主目录位置,必须是绝对路径。
ORACLE_HOME_NAME Oracle服务器的名称,必须以字母开头。
COMPONENT_LANGUAGES Oracle服务器支持的语言,默认只有英语,可以添加多个语言。
s_nameForDBAGrp 用于Oracle系统管理的linux用户组名,该组的用户拥有管理Oracle服务器的权限,在本例中设置为 oradba。
s_nameForOPERGrp 用于Oracle数据库常规操作的linux用户组名,该组的用户拥有常规操作Oracle数据库的权限,在本例中设置为
oracle。
n_configurationOption 安装类型(1为在安装后创建数据库,2为安装后创建一个自动存储管理实例,3为只安装服务器软件),在本例中选择3。
其它项目用默认值即可,也可以根据自己的须要进行修改。
注:如果Oracle从光盘安装,必须先将应答文件复制到硬盘上,才能修改。
2.2 开始安装
现在万事具备,可以安装了。
用oracle用户登录,然后在Oracle安装目录里执行
./runInstaller -ignoreSysPrereqs -silent -responseFile <应答文件的绝对路径>
接下来就是等待安装结束了。
各安装参数的含义如下
ignoreSysPrereqs
让Oracle忽略系统检查,因为Oracle官方声明只支持Linux服务器产品,所以要在非服务器产品的Linux上安装就必须指定此参数。
silent 让安装程序以静默模式运行。
responseFile 指定一个应答文件。
3 安装后要做的工作
3.1 Oracle系统初始化
用root用户登录,然后运行$ORACLE_HOME/root.sh进行Oracle的系统初始化工作,通常一路按回车用默认值即可。
3.2 安装网络监听器
没有网络监听器,客户端就无法通过网络连接Oralce服务器。要在命令行安装网络监听器,也只能使用静默模式。
编辑Oracle安装目录里response子目录下的应答文件 netca.rsp,修改以下项目。
INSTALL_TYPE=""custom"" 安装的类型
LISTENER_NUMBER=1 监听器数量
LISTENER_NAMES={"LISTENER"} 监听器的名称列表
LISTENER_PROTOCOLS={"TCP;1521"} 监听器使用的通讯协议列表
LISTENER_START=""LISTENER"" 监听器启动的名称
然后运行
$ORACLE_HOME/bin/netca /silent /responseFile <应答文件的绝对路径>
3.3 修改dbstart
用任意的文本编辑器打开 $ORACLE_HOME/bin/dbstart,将
ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle
改为
ORACLE_HOME_LISTNER=$ORACLE_HOME
否则网络监听器可能无法自动启动。
3.4 安装数据库实例
编辑Oracle安装目录里response子目录下的应答文件 dbca.rsp,修改以下项目。
GDBNAME 数据库全局名称
SID 数据库的SID
SYSPASSWORD SYS用户的初始密码
SYSTEMPASSWORD SYSTEM用户的初始密码
CHARACTERSET 数据库字符集(中文为 ZHS16GBK)
NATIONALCHARACTERSET 数据库国家字符集

然后运行
$ORACLE_HOME/bin/dbca -silent -responseFile <应答文件的绝对路径> -cloneTemplate
数据库创建成功后须要注册一些信息,运行
$ORACLE_BASE/oraInventory/orainstRoot.sh
然后编辑 /etc/oratab

<Oracle的SID>:<Oracle的主目录>:N
修改为
<Oracle的SID>:<Oracle的主目录>:Y
使数据库实例能够自动启动。
3.5 让Oracle运行为服务
创建文件 /etc/init.d/oracle,输入下列内容
#!/bin/sh
#
export ORACLE_HOME=<Oracle服务器主目录的绝对路径>
export ORACLE_HOME_LISTNER=$ORACLE_HOME
export RACLE=oracle
. /etc/init.d/functions
export PATH=${PATH}:$ORACLE_HOME/bin
start()
{
daemon --user $ORACLE $ORACLE_HOME/bin/dbstart
daemon --user $ORACLE "$ORACLE_HOME_LISTNER/bin/lsnrctl start"
}
stop()
{
daemon --user $ORACLE "$ORACLE_HOME_LISTNER/bin/lsnrctl stop"
daemon --user $ORACLE $ORACLE_HOME/bin/dbshut
}
case $1 in
'start')
start
RETVAL=$?
;;
'stop')
stop
RETVAL=$?
;;
'restart')
stop
start
RETVAL=$?
;;
*)
echo "usage: $0 {start|stop|restart}"
exit
;;
esac
#
exit

然后将这个文件赋予可执行的权限,运行
chmod a+x /etc/init.d/oracle
让Oracle的服务在Linux启动时自动运行
ln -s /etc/init.d/oracle /etc/rc.d/rc3.d/S99oracle
ln -s /etc/init.d/oracle /etc/rc.d/rc5.d/S99oracle
这样就可以用service来启动和停止Oracle了。

附1 Oracle 10g对硬件环境的要求
物理内存
基本 - 512MB
推荐 - 1024MB
内存交换分区相对于物理内存的比例
物理内存1024MB~2048MB - 150%
物理内存2049MB~8192MB - 100%
物理内存大于8192MB - 75%
磁盘空间
/tmp目录所在的分区至少要有400MB空闲磁盘空间。
根据安装类型,安装Oracle服务器软件的分区至少要有1.5GB到3.5GB的空闲磁盘空间。
1.2GB磁盘空间用于数据库预配置文件系统存储(可选)
附2 Oracle 10g对软件环境的要求
操作系统
Red Hat Enterprise Linux AS/ES 3.0 (Update 4 or later)
Red Hat Linux 4.0
SUSE Linux Enterprise Server 9.0 with SP 2 or later
Asianux 1.0
Asianux 2.0
软件包
X11相关的库 (软件包名视操作系统而定,故不一一列出)
gcc (版本至少为2.96-124)
make (版本至少为3.79)
binutils (版本至少为2.11)
openmotif (版本至少为2.1.30)
setarch (版本至少为1.3)
compat-db (版本至少为4.0.14.5)
compat-gcc (版本至少为7.3-2.96.122)
compat-gcc-c++ (版本至少为7.3-2.96.122)
compat-libstdc++ (版本至少为7.3-2.96.122)
compat-libstdc++-devel (版本至少为7.3-2.96.122)
sysstat (版本至少为5.0.5-1)
libaio (版本至少为0.3.103-3)
libaio-devel (版本至少为0.3.103-3)
附3 相关链接
在 Linux x86 上安装 Oracle 数据库 10g
自动安装 Oracle 数据库 10g 和 Red Hat Enterprise Linux
Oracle® Database Installation Guide for Linux x86
Oracle数据库静默安装实践
Oracle的全球化支持
Oracle 10g文档库

http://www.myhpf.co.uk/banner.asp?friend=295311

4 结束语
现在Oracle 10g的安装已经完成,在任何一台电脑上装个Oracle客户端就可以对它进行管理了。
如果要卸载Oracle,只须运行
$./runInstaller -silent -deinstall -removeallfiles -removeAllPatches
"REMOVE_HOMES={$ORACLE_HOME}" -responseFile <安装时使用的应答文件>

[3]

http://wooce.sharera.com/blog/BlogTopic/58986.htm

1 安装前的准备
准备工作要用登录为root用户来进行。

1.1 选择安装环境的语言
Oracle安装时可以通过环境变量LANG指定安装语言,如果Linux命令行不能显示中文,就要将语言环境设置为英语。
例如:export LANG=en_US.UTF-8

1.2 修改gennttab
Oracle 10g在一些Linux系统下安装可能会被中断,在安装日志文件
$ORACLE_HOME/install/make.log
里可以看见以下错误信息
/bin/sed: -e expression #1, char 7: unterminated `s' command
要解决这个问题就必须编辑文件 gennttab。

先解压Oracle安装目录下的 stage/Components/oracle.network.rsf/10.2.0.1.0/1/DataFiles/filegroup6.jar,可以用以下方法之一进行解压
用jar解压:jar -xf filegroup6.jar bin/gennttab
用unzip解压:unzip filegroup6.jar bin/gennttab
再用文本编辑器(例如vi)打开解压出来的 gennttab,将以下内容
LIB=`$ECHO ${TtoLIB} | $SED 's/ /\\
/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
INI=`$ECHO ${TtoINI} | $SED 's/ /\\
/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
BAS=`$ECHO ${TtoBAS} | $SED 's/ /\\
/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
改为
LIB=`$ECHO ${TtoLIB} | $SED 's/ /\n/g' | $GREP "^${T}:" | $AWK -F:
'{print $2}'`
INI=`$ECHO ${TtoINI} | $SED 's/ /\n/g' | $GREP "^${T}:" | $AWK -F:
'{print $2}'`
BAS=`$ECHO ${TtoBAS} | $SED 's/ /\n/g' | $GREP "^${T}:" | $AWK -F:
'{print $2}'`

保存后再用将gennttab更新到filegroup6.jar里面,可以用以下方法之一进行更新
用jar更新:jar -uvf filegroup6.jar bin/gennttab
用zip更新:zip -vu filegroup6.jar bin/gennttab

1.3 修改内核参数
编辑文件 /etc/sysctl.conf,修改以下项目,如果没有可以自己添加。
kernel.shmall = 2097152 # 可以使用的共享内存的总量。
kernel.shmmax = 2147483648 # 最大共享内存段大小。
kernel.shmmni = 4096 # 整个系统共享内存段的最大数目。
kernel.sem = 250 32000 100 128 # 每个信号对象集的最大信号对象数;系统范围内最大信号对象数;每个信号对象支持的最大操作数;系统范围内最大信号对象集数。
fs.file-max = 65536 # 系统中所允许的文件句柄最大数目。
net.ipv4.ip_local_port_range = 1024 65000 # 应用程序可使用的IPv4端口范围。
net.core.rmem_default = 1048576 # 套接字接收缓冲区大小的缺省值
net.core.rmem_max = 1048576 # 套接字接收缓冲区大小的最大值
net.core.wmem_default = 262144 # 套接字发送缓冲区大小的缺省值
net.core.wmem_max = 262144 # 套接字发送缓冲区大小的最大值

注:内核参数并非必须修改,可以根据自己实际情况而定。

1.4 为Oracle创建DBA组和用户
安装Oracle必须指定拥有DBA权限的组和运行Oracle的用户。
创建组:groupadd dba
groupadd oinstall
groupadd oper
创建用户:useradd -g oinstall -G dba oracle
passwd oracle
下面修改 oracle用户的.bash_profile文件
注:组名和用户名可以任意指定,不一定要照搬本文。

su - oracle
vi .bash_profile
#--------------------------------------
# Set for Oracle10g Install &#124;
#--------------------------------------
trap " " 0 1 2 3 5 9 15
trap clear 0
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_SID=orasid
export ORACLE_TERM=xterm
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/usr/X11R6/lib64/
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export LD_ASSUME_KERNEL=2.6.9
export NLS_LANG="Simplified Chinese_china".UTF8
LC_CTYPE=zh_CN.UTF8
LC_ALL=zh_CN.UTF8
LANG=zh_CN.UTF8
umask 022
#
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



1.5 创建安装Oracle的目标目录
创建Oracle系统目录:mkdir /oracle
创建Oracle服务器主目录:mkdir /oracle/10g
将该目录的所有者设置为oracle:chown oracle /oracle -R
编辑 /etc/profile,在后面追加以下两行
export ORACLE_BASE=/oracle
export ORACLE_HOME=/oracle/10g

注:安装Oracle的目标目录可以任意指定,但是安装和运行Oracle的用户必须有完全修改该目录的权限。

1.6 下载安装32位JAVA所需的X环境的组件

如果你是在普通的32位的linux下安装oracle 10g,无需做此步骤。但在64位的linux上安装oracle 10g时,必须做此步骤,原因很简单,因为64位的oracle 10g安装包里内含的jdk1.4.2和jre1.4.2都是32位的,所以若不做此步骤便会在下面执行dbca的时候出现提示缺少了libXp.so.6包的错误。
下载安装安装xorg-x11-deprecated-libs-6.8.2-1.EL.13.20.i386.rpm包即可,据说在Oracle提供的ENTERPRISE Linux for X86-64 R4里有相应的包。不过我是在rpmbones.net上找到下载的。
rpm -ivh xorg-x11-deprecated-libs-6.8.2-1.EL.13.20.i386.rpm
然后,在/etc/ld.so.conf里添加:
/usr/X11R6/lib
执行:
ldconfig

2 安装
2.1 编辑安装需要的应答文件
静默模式(Silent)安装必须指定一个应答文件来完成安装过程所须的各类参数。
在Oracle安装目录的response子目录里有enterprise.rsp有enterprise.rsp、standard.rsp和custom.rsp三个应答文件,分别对应企业版、标准版和定制的安装。
以enterprise.rsp为例,用任意的文本编辑器打它,修改以下这些项目的值。
ORACLE_HOME Oracle服务器的主目录位置,必须是绝对路径。
ORACLE_HOME_NAME Oracle服务器的名称,必须以字母开头。
COMPONENT_LANGUAGES Oracle服务器支持的语言,默认只有英语,可以添加多个语言。
s_nameForDBAGrp 用于Oracle系统管理的linux用户组名,该组的用户拥有管理Oracle服务器的权限,在本例中设置为 dba。
s_nameForOPERGrp 用于Oracle数据库常规操作的linux用户组名,该组的用户拥有常规操作Oracle数据库的权限,在本例中设置为 oper。
n_configurationOption 安装类型(1为在安装后创建数据库,2为安装后创建一个自动存储管理实例,3为只安装服务器软件),在本例中选择3。
其它项目用默认值即可,也可以根据自己的须要进行修改。

注:如果Oracle从光盘安装,必须先将应答文件复制到硬盘上,才能修改。

2.2 开始安装
现在万事具备,可以安装了。
用oracle用户登录,然后在Oracle安装目录里执行
./runInstaller -ignoreSysPrereqs -silent -responseFile <应答文件的绝对路径>
接下来就是等待安装结束了。
各安装参数的含义如下
ignoreSysPrereqs 让Oracle忽略系统检查,因为Oracle官方声明只支持Linux服务器产品,所以要在非服务器产品的Linux上安装就必须指定此参数。
silent 让安装程序以静默模式运行。
responseFile 指定一个应答文件。

3 安装后要做的工作
3.1 Oracle系统初始化
用root用户登录,然后运行$ORACLE_HOME/root.sh进行Oracle的系统初始化工作,通常一路按回车用默认值即可。

3.2 安装网络监听器
没有网络监听器,客户端就无法通过网络连接Oralce服务器。要在命令行安装网络监听器,也只能使用静默模式。
编辑Oracle安装目录里response子目录下的应答文件 netca.rsp,修改以下项目。
INSTALL_TYPE=""custom"" 安装的类型
LISTENER_NUMBER=1 监听器数量
LISTENER_NAMES={"LISTENER"} 监听器的名称列表
LISTENER_PROTOCOLS={"TCP;1521"} 监听器使用的通讯协议列表
LISTENER_START=""LISTENER"" 监听器启动的名称
然后运行
$ORACLE_HOME/bin/netca /silent /responseFile <应答文件的绝对路径>

3.3 修改dbstart
用任意的文本编辑器打开 $ORACLE_HOME/bin/dbstart,将
ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle
改为
ORACLE_HOME_LISTNER=$ORACLE_HOME
否则网络监听器可能无法自动启动。

3.4 安装数据库实例
编辑Oracle安装目录里response子目录下的应答文件 dbca.rsp,修改以下项目。
GDBNAME 数据库全局名称
SID 数据库的SID
SYSPASSWORD SYS用户的初始密码
SYSTEMPASSWORD SYSTEM用户的初始密码
CHARACTERSET 数据库字符集(中文为 ZHS16GBK)
NATIONALCHARACTERSET 数据库国家字符集

然后运行
$ORACLE_HOME/bin/dbca -silent -responseFile <应答文件的绝对路径> -cloneTemplate
数据库创建成功后须要注册一些信息,运行
$ORACLE_BASE/oraInventory/orainstRoot.sh
然后编辑 /etc/oratab

<Oracle的SID>:<Oracle的主目录>:N
修改为
<Oracle的SID>:<Oracle的主目录>:Y
使数据库实例能够自动启动。

3.5 让Oracle运行为服务
创建文件 /etc/init.d/oracle,输入下列内容

#!/bin/sh
#
export ORACLE_HOME=<Oracle服务器主目录的绝对路径>
export ORACLE_HOME_LISTNER=$ORACLE_HOME
export ORACLE=oracle

. /etc/init.d/functions

export PATH=${PATH}:$ORACLE_HOME/bin

start()
{
daemon --user $ORACLE $ORACLE_HOME/bin/dbstart
daemon --user $ORACLE "$ORACLE_HOME_LISTNER/bin/lsnrctl start"
}

stop()
{
daemon --user $ORACLE "$ORACLE_HOME_LISTNER/bin/lsnrctl stop"
daemon --user $ORACLE $ORACLE_HOME/bin/dbshut
}

case $1 in
'start')
start
RETVAL=$?
;;
'stop')
stop
RETVAL=$?
;;
'restart')
stop
start
RETVAL=$?
;;
*)
echo "usage: $0 {start|stop|restart}"
exit
;;
esac
#
exit



然后将这个文件赋予可执行的权限,运行
chmod a+x /etc/init.d/oracle
让Oracle的服务在Linux启动时自动运行
ln -s /etc/init.d/oracle /etc/rc.d/rc3.d/S99oracle
ln -s /etc/init.d/oracle /etc/rc.d/rc5.d/S99oracle
这样就可以用service来启动和停止Oracle了。

附1 Oracle 10g对硬件环境的要求
物理内存
基本 - 512MB
推荐 - 1024MB
内存交换分区相对于物理内存的比例
物理内存1024MB~2048MB - 150%
物理内存2049MB~8192MB - 100%
物理内存大于8192MB - 75%
磁盘空间
/tmp目录所在的分区至少要有400MB空闲磁盘空间。
根据安装类型,安装Oracle服务器软件的分区至少要有1.5GB到3.5GB的空闲磁盘空间。
1.2GB磁盘空间用于数据库预配置文件系统存储(可选)

附2 Oracle 10g对软件环境的要求
操作系统
Red Hat Enterprise Linux AS/ES 3.0 (update 4 or later)
Red Hat Linux 4.0
SUSE Linux Enterprise Server 9.0 with SP 2 or later
Asianux 1.0
Asianux 2.0
软件包
X11相关的库 (软件包名视操作系统而定,故不一一列出)
gcc (版本至少为2.96-124)
make (版本至少为3.79)
binutils (版本至少为2.11)
openmotif (版本至少为2.1.30)
setarch (版本至少为1.3)
compat-db (版本至少为4.0.14.5)
compat-gcc (版本至少为7.3-2.96.122)
compat-gcc-c++ (版本至少为7.3-2.96.122)
compat-libstdc++ (版本至少为7.3-2.96.122)
compat-libstdc++-devel (版本至少为7.3-2.96.122)
sysstat (版本至少为5.0.5-1)
libaio (版本至少为0.3.103-3)
libaio-devel (版本至少为0.3.103-3)

附3 相关链接
在 Linux x86 上安装 Oracle 数据库 10g
自动安装 Oracle 数据库 10g 和 Red Hat Enterprise Linux
Oracle® Database Installation Guide for Linux x86
Oracle数据库静默安装实践
Oracle的全球化支持
Oracle 10g文档库



4 结束语
现在Oracle 10g的安装已经完成,在任何一台电脑上装个Oracle客户端就可以对它进行管理了。
如果要卸载Oracle,只须运行
$./runInstaller -silent -deinstall -removeallfiles -removeAllPatches "REMOVE_HOMES={$ORACLE_HOME}" -responseFile <安装时使用的应答文件>

[4]

http://unix-cd.com/vc/www/16/2010-10/16938.html

Oracle 10g支持在命令行下用静默模式(Silent)安装,给那些没有安装图形界面的Linux系统提供了极大的便利。

下面以Fedora Core 为例,介绍在命令行下安装OracleOracle 10g的方法。

1 安装前的准备
准备工作要用登录为root用户来进行。

1.1 选择安装环境的语言
Oracle安装时可以通过环境变量LANG指定安装语言,如果Linux命令行不能显示中文,就要将语言环境设置为英语。
例如:export LANG=en_US.UTF-8

1.2 修改gennttab
Oracle 10g在一些Linux系统下安装可能会被中断,在安装日志文件
$ORACLE_HOME/install/make.log
里可以看见以下错误信息
/bin/sed: -e expression #1, char 7: unterminated `s' command
要解决这个问题就必须编辑文件 gennttab。

先解压Oracle安装目录下的 stage/Components/oracle.network.rsf/10.2.0.1.0/1/DataFiles/filegroup6.jar,可以用以下方法之一进行解压
用jar解压:jar -xf filegroup6.jar bin/gennttab
用unzip解压:unzip filegroup6.jar bin/gennttab
再用文本编辑器(例如vi)打开解压出来的 gennttab,将以下内容
LIB=`$ECHO ${TtoLIB} | $SED 's/ /\\
/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
INI=`$ECHO ${TtoINI} | $SED 's/ /\\
/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
BAS=`$ECHO ${TtoBAS} | $SED 's/ /\\
/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
改为
LIB=`$ECHO ${TtoLIB} | $SED 's/ /\n/g' | $GREP "^${T}:" | $AWK -F:
'{print $2}'`
INI=`$ECHO ${TtoINI} | $SED 's/ /\n/g' | $GREP "^${T}:" | $AWK -F:
'{print $2}'`
BAS=`$ECHO ${TtoBAS} | $SED 's/ /\n/g' | $GREP "^${T}:" | $AWK -F:
'{print $2}'`

保存后再用将gennttab更新到filegroup6.jar里面,可以用以下方法之一进行更新
用jar更新:jar -uvf filegroup6.jar bin/gennttab
用zip更新:zip -vu filegroup6.jar bin/gennttab

1.3 修改内核参数
编辑文件 /etc/sysctl.conf,修改以下项目,如果没有可以自己添加。
kernel.shmall = 2097152 # 可以使用的共享内存的总量。
kernel.shmmax = 2147483648 # 最大共享内存段大小。
kernel.shmmni = 4096 # 整个系统共享内存段的最大数目。
kernel.sem = 250 32000 100 128 # 每个信号对象集的最大信号对象数;系统范围内最大信号对象数;每个信号对象支持的最大操作数;系统范围内最大信号对象集数。
fs.file-max = 65536 # 系统中所允许的文件句柄最大数目。
net.ipv4.ip_local_port_range = 1024 65000 # 应用程序可使用的IPv4端口范围。
net.core.rmem_default = 1048576 # 套接字接收缓冲区大小的缺省值
net.core.rmem_max = 1048576 # 套接字接收缓冲区大小的最大值
net.core.wmem_default = 262144 # 套接字发送缓冲区大小的缺省值
net.core.wmem_max = 262144 # 套接字发送缓冲区大小的最大值

注:内核参数并非必须修改,可以根据自己实际情况而定。

1.4 为Oracle创建DBA组和用户
安装Oracle必须指定拥有DBA权限的组和运行Oracle的用户。
创建组:groupadd oradba
创建用户:useradd -g oradba oracle

注:组名和用户名可以任意指定,不一定要照搬本文。

1.5 创建安装Oracle的目标目录
创建Oracle系统目录:mkdir /oracle
创建Oracle服务器主目录:mkdir /oracle/10g
将该目录的所有者设置为oracle:chown oracle /oracle -R
编辑 /etc/profile,在后面追加以下两行
export ORACLE_BASE=/oracle
export ORACLE_HOME=/oracle/10g

注:安装Oracle的目标目录可以任意指定,但是安装和运行Oracle的用户必须有完全修改该目录的权限。

2 安装
2.1 编辑安装需要的应答文件
静默模式(Silent)安装必须指定一个应答文件来完成安装过程所须的各类参数。
在Oracle安装目录的response子目录里有enterprise.rsp有enterprise.rsp、standard.rsp和custom.rsp三个应答文件,分别对应企业版、标准版和定制的安装。
以enterprise.rsp为例,用任意的文本编辑器打它,修改以下这些项目的值。
ORACLE_HOME Oracle服务器的主目录位置,必须是绝对路径。
ORACLE_HOME_NAME Oracle服务器的名称,必须以字母开头。
COMPONENT_LANGUAGES Oracle服务器支持的语言,默认只有英语,可以添加多个语言。
s_nameForDBAGrp 用于Oracle系统管理的linux用户组名,该组的用户拥有管理Oracle服务器的权限,在本例中设置为 oradba。
s_nameForOPERGrp 用于Oracle数据库常规操作的linux用户组名,该组的用户拥有常规操作Oracle数据库的权限,在本例中设置为 oracle。
n_configurationOption 安装类型(1为在安装后创建数据库,2为安装后创建一个自动存储管理实例,3为只安装服务器软件),在本例中选择3。
其它项目用默认值即可,也可以根据自己的须要进行修改。

注:如果Oracle从光盘安装,必须先将应答文件复制到硬盘上,才能修改。

2.2 开始安装
现在万事具备,可以安装了。
用oracle用户登录,然后在Oracle安装目录里执行
./runInstaller -ignoreSysPrereqs -silent -responseFile <应答文件的绝对路径>
接下来就是等待安装结束了。
各安装参数的含义如下
ignoreSysPrereqs 让Oracle忽略系统检查,因为Oracle官方声明只支持Linux服务器产品,所以要在非服务器产品的Linux上安装就必须指定此参数。
silent 让安装程序以静默模式运行。
responseFile 指定一个应答文件。

3 安装后要做的工作
3.1 Oracle系统初始化
用root用户登录,然后运行$ORACLE_HOME/root.sh进行Oracle的系统初始化工作,通常一路按回车用默认值即可。

3.2 安装网络监听器
没有网络监听器,客户端就无法通过网络连接Oralce服务器。要在命令行安装网络监听器,也只能使用静默模式。
编辑Oracle安装目录里response子目录下的应答文件 netca.rsp,修改以下项目。
INSTALL_TYPE=""custom"" 安装的类型
LISTENER_NUMBER=1 监听器数量
LISTENER_NAMES={"LISTENER"} 监听器的名称列表
LISTENER_PROTOCOLS={"TCP;1521"} 监听器使用的通讯协议列表
LISTENER_START=""LISTENER"" 监听器启动的名称
然后运行
$ORACLE_HOME/bin/netca /silent /responseFile <应答文件的绝对路径>

3.3 修改dbstart
用任意的文本编辑器打开 $ORACLE_HOME/bin/dbstart,将
ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle
改为
ORACLE_HOME_LISTNER=$ORACLE_HOME
否则网络监听器可能无法自动启动。

3.4 安装数据库实例
编辑Oracle安装目录里response子目录下的应答文件 dbca.rsp,修改以下项目。
GDBNAME 数据库全局名称
SID 数据库的SID
SYSPASSWORD SYS用户的初始密码
SYSTEMPASSWORD SYSTEM用户的初始密码
CHARACTERSET 数据库字符集(中文为 ZHS16GBK)
NATIONALCHARACTERSET 数据库国家字符集

然后运行
$ORACLE_HOME/bin/dbca -silent -responseFile <应答文件的绝对路径> -cloneTemplate
数据库创建成功后须要注册一些信息,运行
$ORACLE_BASE/oraInventory/orainstRoot.sh
然后编辑 /etc/oratab

<Oracle的SID>:<Oracle的主目录>:N
修改为
<Oracle的SID>:<Oracle的主目录>:Y
使数据库实例能够自动启动。

3.5 让Oracle运行为服务
创建文件 /etc/init.d/oracle,输入下列内容



#!/bin/sh
#
export ORACLE_HOME=<Oracle服务器主目录的绝对路径>
export ORACLE_HOME_LISTNER=$ORACLE_HOME
export ORACLE=oracle

. /etc/init.d/functions

export PATH=${PATH}:$ORACLE_HOME/bin

start()
{
daemon --user $ORACLE $ORACLE_HOME/bin/dbstart
daemon --user $ORACLE "$ORACLE_HOME_LISTNER/bin/lsnrctl start"
}

stop()
{
daemon --user $ORACLE "$ORACLE_HOME_LISTNER/bin/lsnrctl stop"
daemon --user $ORACLE $ORACLE_HOME/bin/dbshut
}

case $1 in
'start')
start
RETVAL=$?
;;
'stop')
stop
RETVAL=$?
;;
'restart')
stop
start
RETVAL=$?
;;
*)
echo "usage: $0 {start|stop|restart}"
exit
;;
esac
#
exit

然后将这个文件赋予可执行的权限,运行
chmod a+x /etc/init.d/oracle
让Oracle的服务在Linux启动时自动运行
ln -s /etc/init.d/oracle /etc/rc.d/rc3.d/S99oracle
ln -s /etc/init.d/oracle /etc/rc.d/rc5.d/S99oracle
这样就可以用service来启动和停止Oracle了。

附1 Oracle 10g对硬件环境的要求
物理内存
基本 - 512MB
推荐 - 1024MB
内存交换分区相对于物理内存的比例
物理内存1024MB~2048MB - 150%
物理内存2049MB~8192MB - 100%
物理内存大于8192MB - 75%
磁盘空间
/tmp目录所在的分区至少要有400MB空闲磁盘空间。
根据安装类型,安装Oracle服务器软件的分区至少要有1.5GB到3.5GB的空闲磁盘空间。
1.2GB磁盘空间用于数据库预配置文件系统存储(可选)

附2 Oracle 10g对软件环境的要求
操作系统
Red Hat Enterprise Linux AS/ES 3.0 (Update 4 or later)
Red Hat Linux 4.0
SUSE Linux Enterprise Server 9.0 with SP 2 or later
Asianux 1.0
Asianux 2.0
软件包
X11相关的库 (软件包名视操作系统而定,故不一一列出)
gcc (版本至少为2.96-124)
make (版本至少为3.79)
binutils (版本至少为2.11)
openmotif (版本至少为2.1.30)
setarch (版本至少为1.3)
compat-db (版本至少为4.0.14.5)
compat-gcc (版本至少为7.3-2.96.122)
compat-gcc-c++ (版本至少为7.3-2.96.122)
compat-libstdc++ (版本至少为7.3-2.96.122)
compat-libstdc++-devel (版本至少为7.3-2.96.122)
sysstat (版本至少为5.0.5-1)
libaio (版本至少为0.3.103-3)
libaio-devel (版本至少为0.3.103-3)

附3

oracle的启动和关闭

启动:

#su - oracle

$sqlplus /nolog

SQL>conn /as sysdba

SQL>startup

SQL>quit

关闭:

$sqlplus /nolog

SQL>conn /as sysdba

SQL>shutdown

SQL>quit

以上的sqlplus /nolog与SQL>conn /as sysdba

可以替换成sqlplus " / as sysdba"



启动监听:

$lsnrctl start



$lsnrctl

LSNRCTL>start

关闭监听:

$lsnrctl stop



$lsnrctl

LSNRCTL>stop



4 结束语
现在Oracle 10g的安装已经完成,在任何一台电脑上装个Oracle客户端就可以对它进行管理了。
如果要卸载Oracle,只须运行
$./runInstaller -silent -deinstall -removeallfiles -removeAllPatches "REMOVE_HOMES={$ORACLE_HOME}" -responseFile <安装时使用的应答文件>

[5]

http://yangzhongfei.blog.163.com/blog/static/461098752010629115550743/

Oracle 10g 命令行下安装

Oracle 2010-07-29 11:55:50 阅读78 评论0
字号:大中小
订阅


2008/6/23
Oracle 10g 命令行下安装

一朋友公司的服务器需要在RedHat 5下配置jsp环境,Tomcat作为jsp引擎和web服务器,安装数据库Oracle 10g。因为之前对LAMP比较熟悉,第一次接触jsp环境比较手生,参考了网络上的部分资料,不过安装环境或安装方式都和所需要求不尽相同,折腾了好几天终于搞定,以下是自己写的比较详细的总结,希望对一些新手朋友有点帮助。

此次配置是在RedHat linux安装完毕后开启SSH,其余都在远程SHELL下操作,没有在服务器本机的文本或图形上操作。

环境:RedHat Enterprise Server 5

jdk-1_5_0_12-linux-i586-rpm.bin

apache-tomcat-6.0.14.tar.gz

oracle-xe-10.2.0.1-1.0.i386.rpm

其他安装包见文中

------------------------------------------------------------

RedHat Enterprise Server 5

红帽发行的Linux 服务器版最新版,Linux 2.6.18内核

下载地址:

更多介绍和下载地址可以查看

安装序列号:2515dd4e215225dd

[此贴子已经被作者于2007-9-17 3:17:41编辑过]

2楼

linkon 发表于:2007-9-17 3:18:23

jdk-1_5_0_12-linux-i586-rpm.bin

不用多介绍了,必须要这个,sun上面版本有6了,我这里用的是5.

apache-tomcat-6.0.14.tar.gz

tomcat最新版本了

oracle-xe-10.2.0.1-1.0.i386.rpm

Oracle 10g的rpm安装包

下载地址:

PS:我用的机器系统是win xp,用SecureCRT 5.5连接SSH。

顺便推荐Windows平台连接Linux shell 两款好工具,SecureCRT和Putty。

SecureCRT v5.5.2 英文破解版

SecureCRT v5.0.5 中文破解版

putty v0.60 中文版

Red Hat Linux的安装就不用多说了,有问题可以搜索相关资料看看。

安装的时候,我在这台服务器装了虚拟化后出现不正常导致我重新装了一遍。可能是和硬件的配置有关,这点我没有验证,写出来只是供大家参考而已。

3楼

linkon 发表于:2007-9-17 3:19:04

# cd /usr/local

# chmod 755 jdk-1_5_0_12-linux-i586.rpm

# ./ jdk-1_5_0_12-linux-i586.rpm

此步完成后,会生成jdk-1_5_0_12-linux-i586.rpm的文件

# chmod +x jdk-1_5_0_12-linux-i586.rpm

# rpm –ivh jdk-1_5_0_12-linux-i586.rpm

此时会出现授权协议,按Enter键接受。默认安装到/usr/java/jdk1.5.0_12

OK,接下来配置环境变量

有2.5种方法,呵呵,为什么说2.5种,因为第三种我是觉得不算完整的一种。如下:

1、修改/etc/proFile文件

一般都不推荐这种方法,因为这样做的话,所有用户的shell都会使用这些环境变量,可能会给系统带来安全性问题。但如果你的计算机仅仅作为开发使用时那就推荐使用这种方法。

# vi /etc/profile

在里面最后位置加入以下

JAVA_HOME=/usr/java/jdk1.5.0_12

PATH=$JAVA_HOME/bin:$PATH

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME

export PATH

export CLASSPATH

# source /etc/profile

使修改的配置生效。

4楼

linkon 发表于:2007-9-17 3:19:16

2、修改当前用户变量(推荐用此方法)

# cd

# vi .bashrc

然后一样把一下加进去

JAVA_HOME=/usr/java/jdk1.5.0_12

PATH=$JAVA_HOME/bin:$PATH

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME

export PATH

export CLASSPATH

3、针对当前shell加载环境变量

用export命令直接在shell下设置

# export JAVA_HOME=/usr/java/jdk1.5.0_12

# export PATH=$JAVA_HOME/bin:$PATH

# export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

我之所以说第三种方法不算完整的办法,因为只对当前shell有效而已,如果从另外一个shell登陆,将不能使用刚才设置的变量。

验证java的环境变量有没有生效,可以用以下命令查看一下:

# echo $JAVA_HOME (注意大小写,下同)

没问题的话,显示的是/usr/java/jdk1.5.0_12

# echo $PATH

/usr/java/jdk1.5.0_12/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

# echo $CLASSPATH

.:/usr/java/jdk1.5.0_12/lib/dt.jar:/usr/java/jdk1.5.0_12/lib/tools.jar

# java –version

java version "1.5.0_12"

Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_12-b04)

Java HotSpot(TM) Server VM (build 1.5.0_12-b04, mixed mode)

如果没有生效,请检查以上配置。或干脆先reboot一下。

好了,环境变量如果ok的话,再来测试JDK是否正常工作。

写个测试文件如test.java

# vi test.java

class test
{
public static void main(String[] args)
{
System.out.println("Hi,www.oklinux.cn!");
}
}
保存退出,下面来编译、执行;

# javac test.java

# java test

Hi,www.oklinux.cn!

好了,这样就是正常了。

5楼

linkon 发表于:2007-9-17 3:19:51

安装tomcat比较简单

#cd /usr/local

# tar zxvf apache-tomcat-6.0.14.tar.gz

# cp –r apache-tomcat-6.0.14 /tomcat

把apache-tomcat-6.0.14复制并重命名到/tomcat下

设置一下环境变量,方法如设置JDK一样

TOMCAT_HOME=/ tomcat
export TOMCAT_HOME

修改默认端口

# vi /tomcat/conf/server.xml

找到<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443" />

把8080改成80

保存、退出。

这里,我没有结合apache直接用tomcat作为JSP引擎并当web服务器用,而且后面还要装oracle,也避免8080端口冲突,所以一定要改这里的端口为80。

Ok,可以启动tomcat

# /tomcat/bin/startup.sh (shutdown.sh为停止tomcat)

Using CATALINA_BASE: /tomcat

Using CATALINA_HOME: /tomcat

Using CATALINA_TMPDIR: /tomcat/temp

Using JRE_HOME: /usr/java/jdk1.5.0_12

现在可以用netstat命令看看80有没有了

# netstat –tnl

如果80端口有了,那应该就没问题了,也可以http访问一下。有只小猫猫看着你就是没问题了。呵呵

OK,tomcat也搞定,接下来装比较麻烦的Oracle 10g。

6楼

linkon 发表于:2007-9-17 3:23:00

安装oracle是这次最头疼的事情,网上搜索一堆资料,不过基本找不到oracle 10以上版本的安装介绍,有的话也不是和我的环境一样,大部分是9i等等的。安装完成后总是监听不成功,报错一堆。经过好几天的努力,终于把oracle 10g搞定,步骤如下:

我下载的是rpm包,文件为oracle-xe-10.2.0.1-1.0.i386.rpm

Oracle官方有一篇关于oracle的安装文章,大家可以借鉴一下,不过和我的方法不同。

《在 Linux x86 上安装 Oracle 数据库 10g》

地址是:

1、验证一下系统所需的主要安装包版本:

# rpm -q gcc make binutils openmotif

gcc-4.1.1-52.el5

make-3.81-1.1

binutils-2.17.50.0.6-2.el5

openmotif-2.2.4-0.1

如果显示某个包没有安装的话,请先安装。安装包一般在redhat的安装盘里有(一般在第二张或第三张),如果没有找到的话,可以到官方下载,不过官方下载比较麻烦,给大家推荐个好地方下载:

这个网站很简单明了,搜索框输入需要包的名称一部分或全部,就搜索出一堆的安装包链接地址,有很多镜像可以选择。

7楼

linkon 发表于:2007-9-17 3:23:46

下面举例openmotif的安装,很简单

# cd /usr/local

# rpm –ivh openmotif-2.2.4-0.1.rpm

2、创建 Oracle 组和用户帐户

接下来,创建用于安装和维护 Oracle 10g的 Linux 组和用户帐户。用户帐户将称为 oracle,而组将称为 oinstall 和 dba。执行以下命令:

# /usr/sbin/groupadd oinstall

# /usr/sbin/groupadd dba

# /usr/sbin/useradd -m -g oinstall -G dba oracle

# id oracle

uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba)

设置 oracle 帐户的口令:输密码的时候都是没有回显的,输完就回车就好。

# passwd oracle

Changing password for user oracle.

New password:

Retype new password:

passwd:all authentication tokens updated successfully.

8楼

linkon 发表于:2007-9-17 3:23:59

1、安装Oracle

# cd /usr/local

# rpm -ivh oracle-xe-univ-10.2.0.1-1.0.i386.rpm

Preparing... ########################################### [100%]

package oracle-xe-univ-10.2.0.1-1.0 is already installed

# rpm -e oracle-xe-univ-10.2.0.1-1.0.i386

# rpm -ivh oracle-xe-univ-10.2.0.1-1.0.i386.rpm

Preparing... ########################################### [100%]

1:oracle-xe-univ ########################################### [100%]

Executing Post-install steps...

You must run '/etc/init.d/oracle-xe configure' as the root user to

configure the database.

然后就安装它的提示走,

# /etc/init.d/oracle-xe configure

根据提示设置8080、1521端口,还有sys和system的密码,开机是否启动等。

Starting Oracle Net Listener...Done

Configuring Database...Done

Starting Oracle Database 10g Express Edition Instance...Done

Installation Completed Successfully.

To access the Database Home Page go to http://127.0.0.1:8080/apex

同样,把环境变量加上去

ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server

export ORACLE_HOME

方法如上

# reboot

OK,现在用netstat看看8080和1521是否已经监听了。

# netstat –tnl

如果有

tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN

tcp 0 0 0.0.0.0:1521 0.0.0.0:* LISTEN

应该就ok了。

9楼

linkon 发表于:2007-9-17 3:24:27

Oracle常用几个命令用法

# /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/lsnrctl start //启动*

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 18-SEP-2007 00:27:51

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

TNS-01106: Listener using listener name LISTENER has already been started

然后

# /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/lsnrctl stat

没问题的话,最后会提示

The command completed successfully

其实这里是最容易出错的地方,可能和我一样刚接触oracle的朋友常会在这个地方发难。这几天我也一直在这里徘徊。如果出错的话,注意查看日志文件,路径是network/log/listener.log。如果是监听有问题可以查看network/admin/listener.ora和network/admin/tnsnames.ora的配置是否有问题,我装完redhat后,改了计算机名,监听的时候总是报错。但是我改了这2个配置文件里的HOST后还是不能监听,后来郁闷之极干脆重新装了一下redhat就没事了。

至此,在RedHat ES 5下用Tomcat作为jsp引擎和web服务器,数据库为Oracle 10g的jsp环境配置完成。本人对jsp也是新手,本文只是我此次安装的流程和个人见解,一定有不少问题,欢迎来信批评指教

posted @ 2011-04-11 22:37  陳聽溪  阅读(721)  评论(0)    收藏  举报