admin 管理员组

文章数量: 1086019


2024年1月15日发(作者:shell脚本编程规范和变量)

ubuntu-14.04.1-server-amd64安装Oracle_linux.x64_11gR2_database

1

2

参考《Ubuntu系统安装.mm》《安装和配置ubuntu系统.doc》文档安装系统,并配置网络连接;

更新系统(联网情况下可选,需测试离线安装)

工具和用户:Xshell、root

1)使用root用户登录;

2)执行更新系统命令:

>>apt-get update

>>apt-get dist-upgrade

PS:须确认安装,选择Y

3 安装Ubuntu桌面应用程序

工具和用户:Xshell、root

1)安装桌面程序命令:

>>apt-get install xubuntu-desktop

PS:须确认安装,选择Y

4 安装Oracle所需的依赖包

工具和用户:Xshell、root

1)下载依赖包列表的命令:

>>apt-get install automake autotools-dev binutils bzip2 elfutils expat gawk gcc gcc-multilib

g++-multilib ia32-libs ksh less lesstif2 lesstif2-dev lib32z1 libaio1 libaio-dev libc6-dev

libc6-dev-i386 libc6-i386 libelf-dev libltdl-dev libmotif4 libodbcinstq4-1 libodbcinstq4-1:i386

libpth-dev libpthread-stubs0 libpthread-stubs0-dev libstdc++5 lsb-cxx make openssh-server pdksh

rlwrap rpm sysstat unixodbc unixodbc-dev unzip x11-utils zlibc

2)逐个安装依赖包列表

apt-get install automake

PS:更新

apt-get install autotools-dev

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install binutils

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install bzip2

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install elfutils

PS:更新

apt-get install expat

PS:更新

apt-get install gawk

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install gcc

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install gcc-multilib

PS:更新

apt-get install g++-multilib

PS:更新

apt-get install ia32-libs

PS:报错,提示见样例,安装替换文件

报错样例:

Reading Done

Building dependency tree

Reading Done

Package ia32-libs is not available, but is referred to by another package.

This may mean that the package is missing, has been obsoleted, or

is only available from another source

However the following packages replace it:

lib32z1 lib32ncurses5 lib32bz2-1.0

apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0

PS:更新

apt-get install ksh

PS:更新

apt-get install less

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install lesstif2

PS:报错,提示【Unable to locate package lesstif2】

PS:跳过

apt-get install lesstif2-dev

PS:报错,提示见样例,安装替换文件

报错样例:

root@VYSer13:~# apt-get install lesstif2-dev

Reading Done

Building dependency tree

Reading Done

Package lesstif2-dev is not available, but is referred to by another package.

This may mean that the package is missing, has been obsoleted, or

is only available from another source

PS:替换

Replaces:

lesstif-dev

lesstifg-dbg

lesstifg-dev

libmotif-dev

apt-get install libmotif4

PS:更新

apt-get install lib32z1

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install libaio1

PS:更新

apt-get install libaio-dev

PS:更新

apt-get install libc6-dev

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install libc6-dev-i386

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install libc6-i386

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install libelf-dev

PS:更新

apt-get install libltdl-dev

PS:更新

apt-get install libodbcinstq4-1 libodbcinstq4-1:i386

PS:更新

apt-get install libpth-dev

PS:更新

apt-get install libpthread-stubs0

PS:报错,提示【Unable to locate package libpthread-stubs0】

apt-get install libpthread-stubs0-dev

PS:更新

apt-get install libstdc++5

PS:更新

apt-get install lsb-cxx

PS:更新

apt-get install make

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install openssh-server

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install pdksh

PS:更新

apt-get install rlwrap

PS:更新

apt-get install rpm

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install sysstat

PS:更新

apt-get install unixodbc

PS:更新

apt-get install unixodbc-dev

PS:更新

apt-get install unzip

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install x11-utils

PS:已存在【0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded】

apt-get install zlibc

PS:更新

5 创建用户(此步不能省略,不能使用root用户安装)

工具和用户:Xshell、root

参考命令

>>groupadd oinstall

>>groupadd dba

>>useradd -g oinstall -G dba -d /opt/oracle -s /bin/bash oracle

>>passwd oracle

oracle/oracle

使用root用户修改oracle用户密码

>>passwd oracle

oracle/oracle

6 检查并更新系统变量

工具和用户:Xshell、root

1)检查并记录系统变量

/sbin/sysctl -a | grep sem

root@VYSer13:~# /sbin/sysctl -a | grep sem

= 250 32000 32 128

_next_id = -1

/sbin/sysctl -a | grep shm

root@VYSer13:~# /sbin/sysctl -a | grep shm

_next_id = -1

_rmid_forced = 0

= 2097152

= 33554432

= 4096

b_shm_group = 0

/sbin/sysctl -a | grep file-max

root@VYSer13:~# /sbin/sysctl -a | grep file-max

-max = 200672

/sbin/sysctl -a | grep aio-max

root@VYSer13:~# /sbin/sysctl -a | grep aio-max

-max-nr = 65536

/sbin/sysctl -a | grep ip_local_port_range

root@VYSer13:~# /sbin/sysctl -a | grep ip_local_port_range

_local_port_range = 32768 61000

/sbin/sysctl -a | grep rmem_default

root@VYSer13:~# /sbin/sysctl -a | grep rmem_default

_default = 212992

/sbin/sysctl -a | grep rmem_max

root@VYSer13:~# /sbin/sysctl -a | grep rmem_max

_max = 212992

/sbin/sysctl -a | grep wmem_default

root@VYSer13:~# /sbin/sysctl -a | grep wmem_default

_default = 212992

/sbin/sysctl -a | grep wmem_max

root@VYSer13:~# /sbin/sysctl -a | grep wmem_max

_max = 212992

2)然后根据上面命令中得到的参数值在【/etc/】中增加对应数据,比如:

>>vim /etc/

-max-nr = 65536

-max = 200672

= 2097152

= 33554432

= 4096

= 250 32000 32 128

_local_port_range = 32768 61000

_default = 212992

_max = 212992

_default = 212992

_max = 212992

3)运行一下命令更新内容参数:

>>sysctl -p

7 添加对当前用户的内核限制

工具和用户:Xshell、root

1)在【/etc/security/】文件中增加以下数据(***为当前用户名,以oracle为例)

>>vim /etc/security/

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

oracle soft stack 10240

8 添加系统资源限制参数

工具和用户:Xshell、root

1)在【/etc/pam.d/login】文件中,增加以下行(有了就不用增加了)

>>vim /etc/pam.d/login

增加行【session required pam_】

2)在【/etc/pam.d/su】文件中,增加以下行

>>vim /etc/pam.d/su

增加行或取消注释【session required pam_】

9 创建用于安装Oracle的文件夹并设置其所有权(家目录设置)

工具和用户:Xshell、root

1)创建Oracle安装目录文件夹

>>mkdir -p /opt/oracle

>>mkdir -p /opt/oraInventory

2)使用root用户,对手动创建用户,需要设置其所有权(家目录):

>>chown -R oracle:oinstall /opt/oracle

>>chown -R oracle:oinstall /opt/oraInventory

PS:如果跳过了第四步,那就将所有权设置命令中的用户oracle和组oinstall改为自己当前用户和组(通常二者是一样的),当然这时也可以不执行这两个chown命令,本来目录创建者就是所有者了。另外,需要root权限执行这些命令(sudo,下同)

10 安装JDK环境

工具和用户:Xshell、root

1)下载JDK6版本【】(考虑到兼容性问题,安装6)

2)创建【/usr/lib/jdk】目录

>>mkdir -p /usr/lib/jdk/

3)将JDK6放到【/usr/lib/jdk】目录下,可使用工具Xftp或WinSCP

4)为JDK6安装包,赋予可执行权限

>>cd /usr/lib/jdk

>>chmod 777

5)解压出【jdk1.6.0_45】文件夹

>>./

6)设置Java环境

a. 打开配置文件

>>vim /etc/profile

b. 在文件最后添加设置Java环境变量信息

#JDK set java environment

JAVA_HOME=/usr/lib/jdk/jdk1.6.0_45

JRE_HOME=${JAVA_HOME}/jre

export ANDROID_JAVA_HOME=$JAVA_HOME

export CLASSPATH=.:${JAVA_HOME}/lib:$JRE_HOME/lib:$CLASSPATH

export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin

export JAVA_HOME;

export JRE_HOME;

export CLASSPATH;

HOME_BIN=~/bin/

export PATH=${PATH}:${JAVA_PATH}:${HOME_BIN};

c. 重启计算机,用命令测试JDK的版本

>>reboot

>>java -version

PS:配置成功,提示

root@VYSer13:~# java -version

java version "1.6.0_45"

Java(TM) SE Runtime Environment (build 1.6.0_45-b06)

Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)

11 为Oracle配置环境变量

工具和用户:Xshell、root

1)进入到主文件夹下的.bashrc配置文件中;

>>cd

>>ll

2)在【.bashrc】配置文件中加入如下内容:

#Oracle

#这个写刚刚创建的文件夹

export ORACLE_BASE=/opt/oracle/

#这个后面可以随便填写

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

#数据库的sid

export ORACLE_SID=orcl

export ORACLE_UNQNAME=orcl

#默认字符集

export NLS_LANG=.AL32UTF8

#环境变量

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

去中文化

#Oracle

export ORACLE_BASE=/opt/oracle/

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export ORACLE_SID=orcl

export ORACLE_UNQNAME=orcl

export NLS_LANG=.AL32UTF8

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

使用最新配置文件,执行【source .profile】

12 伪装Ubuntu系统为Red Hat Linux release 5

工具和用户:Xshell、root

PS:oracle默认不支持ubuntu需要欺骗一下oracle安装程序

依次执行步骤:

mkdir /usr/lib64

ln -s /etc /etc/rc.d

ln -s /lib/x86_64-linux-gnu/libgcc_.1 /lib64/

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

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

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

ln -s /usr/lib/x86_64-linux-gnu/libc_nonshared.a /usr/lib64/

ln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a /usr/lib64/

ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /lib64/

ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib64/

echo 'Red Hat Linux release 5' > /etc/redhat-release

PS:注意:以上命令是对应于32位Ubuntu安装32位Oracle的,如果是64位Ubuntu安装64位Oracle,上面的i386-linux-gnu就都要改成x86_64-linux-gnu,目标目录的lib也要改成lib64.(没有lib64就新建一个) 因为Ubuntu将某些库文件根据32位系统和64位系统分别存放了,但Oracle只认/usr/lib和/lib目录,所以需要进行上面的软链接。

13 将Oracle安装文件,拷贝至【/home/Oracle11g】目录下(可使用Xftp或WinSCP工具)

14 进入到桌面环境,正式安装Oracle,为database文件夹下的runInstaller文件赋予可执行权限:

工具和用户:Xshell、root

>>cd /cd /home/Oracle11g/database/

>>chmod 777 runInstaller

15 为防止文字乱码,先在终端输入【export LANG=en_US】,再执行【./runInstaller】:

工具和用户:桌面应用xubuntu-desktop、oracle

>>export LANG=en_US

或者

>>export LANG=zh_

然后再执行:

>>./runInstaller

就可以在全英文界面下进行安装了。

16 当出现swap空间太小的问题时,解决方案:

工具和用户:Xshell、root

PS:安装前进行swap空间检查时可能出现swap空间太小的问题,这一般是由于系统安装时没有创建swap分区,解决办法是创建swap文件来开辟swap空间:

可以另开一个终端用下面的命令临时提升交换空间,再去recheck一下,就行了:

方法1:

free -m

mkdir /swapfile

cd /swapfile

dd if=/dev/zero of=swap bs=1024 count=400000

mkswap -f swap

swapon swap

方法2:

通过下面方法建立swap文件:

#dd if=/dev/zero of=/tmp/swapfree bs=32k count=65515 (count是分区数量,swap大小=bs*count,增加2G)

#mkswap /tmp/swapfree (格式化交换分区文件)

#swapon /tmp/swapfree (启用交换分区文件)

#swapon –s (显示swap状态)

修改/etc/fstab,让系统每次启动都把/tmp/swapfree作为swap使用,增加下面一行:

/tmp/swapfree swap swap defaults 0 0

17 图形安装第1步:填写电子邮件。不勾选复选框,点击“Next”,弹出提示后点„Yes‟进入下一步;

工具和用户:桌面应用xubuntu-desktop、oracle

18 图形安装第2步:创建和配置数据库。默认选择“Create and configure a database”,点击“Next”;

19 图形安装第3步:选择服务器类。设置选择“Server Class”,点击“Next”;

20 图形安装第4步:选择单实例数据库安装。默认选择“Single instance database installation”,点击“Next”;

21 图形安装第5步:选择高级安装。设置选择“Advanced install”,点击“Next”;

22 图形安装第6步:选择产品语言。设置选择“English、Simplified Chinese”,点击“Next”;

23 图形安装第7步:选择数据库版本。默认选择“Enterprise Edition (4.29GB)”,点击“Next”;

24 图形安装第8步:选择安装路径。修改设置与步骤9、步骤11配置一致,查看说明后,点击“Next”:

PS:安装目录与步骤9、步骤11所创建的目录一致,如不一致,可能出现严重风险,需要采取补救措施。

工具和用户:桌面应用xubuntu-desktop、oracle

工具和用户:Xshell、root

Oracle Base:/opt/oracle

Software Location:/opt/oracle/product/11.2.0/dbhome_1

警告提示【Oracle base location is in the Home directory】,选择【Yes】继续

25 图形安装第9步:选择产品清单路径。默认设置与步骤9一致,查看说明后,点击“Next”:

PS:默认产品清单路径(Inventory Directory),与手动创建的产品清单路径不一致,暂时选用默认路径。验证是否可以正确安装。

Inventory Directory:/opt/oraInventory

oraInventory Group Name:oinstall

26 图形安装第10步:选择创建的数据库的类型为一般用途/事物处理。默认设置“General Purpose /

Transaction Processing”,点击“Next”:

27 图形安装第11步:指定数据库标识符为orcl。默认设置,点击“Next”;

28 图形安装第12步:指定配置选项,启动自动内容管理。默认设置,点击“Next”;

29 图形安装第13步:指定管理选项,使用 Database Control 管理数据库“Use Database Control for

database management”。默认设置,点击“Next”;

30 图形安装第14步:指定数据库存储选项,默认为文件系统“File System”和默认数据库文件位置,点击“Next”;

Specify database file location:/opt/oracle/oradata

31 图形安装第15步:指定恢复选项,默认不启用自动备份“Do not enable automated backups”,点击“Next”;

32 图形安装第16步:指定方案口令,设置对所有账户使用相同的口令“Use the same password for all

accounts”,设置为“admin”,点击“Next”。提示输入的ADMIN口令不符合Oracle建议的标准。点击“Yes”继续下一步;

33 图形安装第17步:授权操作系统组,默认设置为“Database Administrator (OSDBA) Group:

dba”“Database Operator (OSOPER) Group: oinstall”。点击“Next”;

34 图形安装第18步:执行先决条件检查,忽略所有,勾选设置“Ignore All”,点击“Next”;

35 图形安装第19步:产品概要“Summary”。点击“Finish”,开始安装过程;

36 图形安装第20步:安装过程68%报错,解决方案:

工具和用户:桌面应用xubuntu-desktop、oracle

工具和用户:Xshell、root

“ins_”错误提示:

【Error in invoking target 'install' of makefile

'/opt/oracle/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_'. See

'/opt/oracle/app/oralnventory/logs/installActions2015-05-05_' for details.】

解决方法:

不处理,点击“contiue”跳过去。会再出现“ins_”错误提示

“ins_”错误提示:

【Error in invoking target 'agent nmhs' of makefile

'/opt/oracle/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_'. See

'/opt/oracle/app/oralnventory/logs/installActions2015-05-05_' for details.】

解决方法:

另开一个终端,键入命令行:

【$ORACLE_HOME】正常可用时

sed -i 's/^(s*$(MK_EMAGENT_NMECTL))s*$/1 -lnnz11/g'

$ORACLE_HOME/sysman/lib/ins_

点击安装界面的【Retry】,就可以继续了

“ins_”错误提示:

【Error in invoking target 'all_no_orcl' of makefile

'/opt/oracle/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_'. See

'/opt/oracle/app/oralnventory/logs/installActions2015-05-05_' for details.】

解决方法:

另开一个终端,键入命令行:

【$ORACLE_HOME】正常可用时

sed -i 's/^($LD $LD_RUNTIME) ($LD_OPT)/1 -Wl,--no-as-needed 2/g'

$ORACLE_HOME/bin/genorasdksh

sed -i 's/^(s*)($(OCRLIBS_DEFAULT))/1 -Wl,--no-as-needed 2/g'

$ORACLE_HOME/srvm/lib/ins_

sed -i 's/^(TNSLSNR_LINKLINE.*$(TNSLSNR_OFILES)) ($(LINKTTLIBS))/1

-Wl,--no-as-needed 2/g' $ORACLE_HOME/network/lib/env_

sed -i 's/^(ORACLE_LINKLINE.*$(ORACLE_LINKER)) ($(PL_FLAGS))/1

-Wl,--no-as-needed 2/g' $ORACLE_HOME/rdbms/lib/env_

点击安装界面的【Retry】,就可以继续了

37 图形安装第21步:安装过程95%时,提示“Database configuration Assistant”警告,选择【Yes】,继续安装,直至OK确认;

38 图形安装第22步:提示手动运行配置脚本“、”

工具和用户:桌面应用xubuntu-desktop、oracle

工具和用户:Xshell、root

脚本路径:

/opt/oraInventory/

/opt/oracle/product/11.2.0/dbhome_1/

执行:

另开一个终端,root用户,执行命令

/opt/oraInventory/

/opt/oracle/product/11.2.0/dbhome_1/

完整bin目录【/opt/oracle/product/11.2.0/dbhome_1/bin】

39 图形安装第23步:返回到桌面环境,点击“OK”完成安装。点击“Close”

40 测试oracle的环境变量,执行命令,检查是否是配置的值,并完善用户环境变量

a. 检查命令

echo $ORACLE_BASE

echo $ORACLE_HOME

echo $PATH

b. 完善oracle用户环境变量

工具和用户:Xshell、oracle

1)进入到家目录下的修改 .profile配置文件;

>>cd

>>vim .profile

2)在【.profile】配置文件中修改如下内容:

#Oracle

export ORACLE_HOSTNAME=192.168.199.191

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export ORACLE_SID=orcl

export ORACLE_UNQNAME=orcl

export NLS_LANG="Simplified chinese_32utf8"

export PATH=$PATH:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib

3)使用最新配置文件,执行【source .profile】

4)再次执行检查命令

c. 其他参考内容

1)安装Oracle后,sqlplus命令报command not found的解决方案

1.问题描述

环境:linux9, Oracle10g.

在一台装有Oracle10g的Linux机器上,我运行sqlplus命令,报错"command not found",

运行别的命令(如:lsnrctl)也同样的错误。初步怀疑是路径问题,然后我尝试cd

$oracle_home/bin下,

再次运行这些命令,还是同样的错误。但用ls能看到这些命令的存在。

2.分析和解决

这种情况应该是路径的问题,应该Oracle刚刚安装成功的,而且安装过程中没有出现异常。

我echo $ORACLE_HOME为空,echo $PATH也为空,问题就出在这里了。

然后我

export ORACLE_HOME=【/opt/oracle/app/oracle/product/11.2.0/dbhome_1】

export PATH=$ORACLE_HOME/bin:$PATH

再次运行Sqlplus命令,ok,可以了。

最后,我用vim编辑 .profile文件,把

cd 到根目录

执行编辑文件命令【vim .profile】

插入如下两行内容

export ORACLE_HOME=/opt/oracle/app/oracle/product/11.2.0/dbhome_1

export PATH=$ORACLE_HOME/bin:$PATH

加入.profile中。保存。

用source .profile启用该资源文件。

重新进入Linux系统,sqlplus命令一切正常。

2)当不正确时,修改配置文件

工具和用户:Xshell、root

1)进入到主文件夹下的.bashrc配置文件中;

>>cd

>>ll

>>vim .bashrc

2)在【.bashrc】配置文件中修改如下内容:

#Oracle

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export ORACLE_SID=orcl

export ORACLE_UNQNAME=orcl

export NLS_LANG=.AL32UTF8

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

3)使用最新配置文件,执行【source .profile】

4)再次执行检查命令

3)完善root用户环境变量

工具和用户:Xshell、root

1)进入到主文件夹下的.bashrc配置文件中;

>>cd

>>ll

>>vim .bashrc

2)在【.bashrc】配置文件中修改如下内容:

#Oracle

export ORACLE_HOSTNAME=192.168.199.191

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export ORACLE_SID=orcl

export ORACLE_UNQNAME=orcl

export NLS_LANG="Simplified chinese_32utf8"

export PATH=$PATH:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib

3)使用最新配置文件,执行【source .profile】

4)再次执行检查命令

41 测试监听状态,启动/停止监听,以及问题解决方案

a. 查看监听状态【lsnrctl status】

正常情况会显示监听信息,样例如:

root@VYSer13:/opt/oracle# lsnrctl status

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 05-MAY-2015 15:05:37

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))

STATUS of the LISTENER

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

Alias LISTENER

Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production

Start Date 05-MAY-2015 14:47:38

Uptime 0 days 0 hr. 17 min. 59 sec

Trace Level off

Security ON: Local OS Authentication

SNMP OFF

Listener Parameter File /opt/oracle/product/11.2.0/dbhome_1/network/admin/

Listener Log File /opt/oracle/diag/tnslsnr/VYSer13/listener/alert/

Listening

(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=VYSer13)(PORT=1521)))

Service "orcl" has 1 instance(s).

Instance "orcl", status READY, has 1 handler(s) for

Service "orclXDB" has 1 instance(s).

Instance "orcl", status READY, has 1 handler(s) for

The command completed successfully

b. 当没有输出,说明无监听,需要手动配置

解决方法:

运行 netca 可以创建监听,调出图形界面设置监听

如果没有创建库此时可以dbca 创建数据库.

顺便运行以下代码修复 dbconsole

emca -repos drop

emca -repos create

emca -config dbcontrol db

emca start dbconsole

c. 修改【监听配置文件】,手动增加配置内容

以下为新添加内容:

SID_LIST_LISTENER=

(SID_LIST=

(SID_DESC=

(SID_NAME=PLSExtProc)

(ORACLE_HOME=/opt/oracle/product/11.2.0/dbhome_1/)

(PROGRAM=extproc)

)

(SID_DESC=

(GLOBAL_DBNAME=ORCL)

(ORACLE_HOME=/opt/oracle/product/11.2.0/dbhome_1/)

(SID_NAME=ORCL)

)

)

d. 启动/停止监听(重启服务器时使用)

PS:其实安装完成后,oracle数据已经启用成功。但重启服务器后,库未自动重启加载(自启动读者可自行配置),下面介绍一下手工操作。

# 登录到oracle用户

$su - oracle

# 启动

# 可以使用netstat -lntp看一看1521商品是否打开

$lsnrctl start

# 停止

$lsnrctl stop

# 也可使用

$dbstart $ORACLE_HOME

$dbshut $ORACLE_HOME

# 可用以下命令配置监听,注意必须进入图形界面

$export LANG=C

# hostname处尽量填主机名称,不用IP,用IP也要更换端口

$netmgr

42 查看Oracle运行状态,启动和停止oracle数据库

方法1:

sqlplus /nolog

SQL>conn / as sysdba

SQL>startup

提示:ORA-01081: ¿¿¿¿¿¿¿¿¿ ORACLE - ¿¿¿¿¿¿,说明已正在运行

SQL> startup

ORACLE 例程已经启动。

Total System Global Area 221294592 bytes

Fixed Size 2212048 bytes

Variable Size 138415920 bytes

Database Buffers 75497472 bytes

Redo Buffers 5169152 bytes

数据库装载完毕。

数据库已经打开。

SQL>shutdown immediate;

方法2:

$sqlplus / as sysdba

# 启动

SQL>startup;

# 停止

SQL>shutdown immediate;

43 PLSQL连接问题解决

a. ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 的解决方法

监听配置文件中可以不必指定监听的服务名(安装Oracle10g后也是没有指定的)。正常情况下一般只要数据库启动,客户端连接数据库也没有什么问题,但是有时重复启动关闭也会出现ORA-12514错误。

既然中没有指定监听,我们可以在文件中指定监听的实例名,这样该问题应该可以连接。

# Network Configuration File:

# Generated by Oracle configuration tools.

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))

(ADDRESS = (PROTOCOL = TCP)(HOST = onest)(PORT = 1521))

)

)

以下为新添加内容:

SID_LIST_LISTENER=

(SID_LIST=

(SID_DESC=

(SID_NAME=PLSExtProc)

(ORACLE_HOME=/opt/oracle/product/11.2.0/dbhome_1/)

(PROGRAM=extproc)

)

(SID_DESC=

(GLOBAL_DBNAME=ORCL)

(ORACLE_HOME=/opt/oracle/product/11.2.0/dbhome_1/)

(SID_NAME=ORCL)

)

)

44 启动和关闭em【VYSer13:1158/em】

PS:EM可用web来管理数据库服务器,还算方便,如果需求也可启用。

# 前提是ORACLE_HOSTNAME要设置正确(命令中也有提示)

$emctl stop dbconsole


本文标签: 安装 命令 用户 监听 数据库