[置顶] 史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程

时间:2023-02-04 17:42:55

准备工作:
1、Solaris 10系统,安装过程就不多说了,详情可以参考我以前的文章。

Sun Solaris 10安装(CD版) – 2008-04-06 15:44:25
Solaris Express Develop Edition 安装 – 2008-04-06 17:46:19
Solaris Express Develop Edition 安装(续) – 2008-04-06 21:16:24
Sun Solaris 10安装(DVD版) – 2008-04-08 22:04:10

注意一点 分区的时候要手动设置是swap 1.5G以上,这次设了2G,硬盘空间也要足够大,我用了20G。

2 、Oracle for Solaris的软件,可以到Oracle官方下载

3、 远程控制软件,我选择xmanager3,虽然是用虚拟机装的系统,但我们仍旧当它是一个远程机器。

修改shell

Solaris 10 默认用的是古老的shell,不方便,想改为linux那种。

缺省的shell 就是古老的shell
echo $SHELL
/sbin/sh

不过据说为了安全不建议更改,但这里我就改了,不然操作很不方便。

#which bash
/usr/bin/bash

gedit /etc/passwd

修改如图1所示

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 注销一下 就可以发现已经更改过来了。

允许远程登录

默认的Solaris是不允许的

vi /etc/ssh/sshd_config 修改
PermitRootLogin yes

如图2

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 svcadm restart ssh 重启生效。

 关闭solaris图形界面

如果不想开机显示图形界面,减少资源开销,可以如下操作
-bash-3.00# /usr/dt/bin/dtconfig -d

已作
禁止桌面自动启动。

 关闭自动启动图形   /usr/dt/bin/dtconfig -d

允许自动启动图形   /usr/dt/bin/dtconfig -e

启动图形界面

    /usr/dt/bin/dtlogin -daemon

    exit

停止sendmail

重启过后,进入字符模式,当输入命令的时候总是出现图3中的现象

 解决方法:svcadm disable sendmail 停掉sendmail 就不会了

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 这节做环境配置

需要远程登录到主机上操作,之前我用的是putty,filezilla这样的工具,而今天用另一种xmanager,它的组件xftp、xshell、xstart已经可以完成所需工作

-bash-3.00# ifconfig -a
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
e1000g0: flags=1004843<UP,BROADCAST,RUNNING,MULTICAST,DHCP,IPv4> mtu 1500 index 2
        inet 192.168.116.128 netmask ffffff00 broadcast 192.168.116.255
        ether 0:c:29:66:1a:f9
在主机上得出IP地址之后,就可以连接了。

用xshell连接,如图4

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 官方要求的包
SUNWarc
SUNWbtool
SUNWhea
SUNWlibm
SUNWlibms
SUNWsprot
SUNWtoo
SUNWi1of
SUNWi1cs
SUNWi15cs
SUNWxwfnt

查看是否安装了包

-bash-3.00# pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibm SUNWlibms SUNWsprot SUNWtoo SUNWi1of  SUNWi1cs SUNWi15cs SUNWxwfnt
system      SUNWarc   Lint Libraries (usr)
system      SUNWbtool CCS tools bundled with SunOS
system      SUNWhea   SunOS Header Files
system      SUNWi1of  ISO-8859-1 (Latin-1) Optional Fonts
system      SUNWlibm  Math & Microtasking Library Headers & Lint Files (Usr)
system      SUNWlibms Math & Microtasking Libraries (Usr)
system      SUNWsprot Solaris Bundled tools
system      SUNWtoo   Programming Tools
system      SUNWxwfnt X Window System platform required fonts
    错误: 未发现”SUNWi1cs”的信息
    错误: 未发现”SUNWi15cs”的信息

本来想把这两个包从光盘里挑出来传进去安装,但其实不行的,只能从光盘直接读取

安装包

-bash-3.00# pwd
/cdrom/sol_10_807_x86/Solaris_10/Product
-bash-3.00# pkgadd -d /cdrom/sol_10_807_x86/Solaris_10/Product SUNWi1cs

处理软件包范例<SUNWi1cs>来自</cdrom/sol_10_807_x86/Solaris_10/Product>

X11 ISO8859-1 Codeset Support(i386) 2.0,REV=2004.10.17.15.04
Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
Use is subject to license terms.
使用</>作为包的基本目录
## 正在处理软件包信息.
## 正在处理系统信息.
   8软件包路径名已经正确地安装
## 检查软件包的从属性
## 检查磁盘空间需求
## 检查同已经安装的软件包之间的冲突.
## 检查setuid/setgid程序。

在这个软件包中包含了正文程序,只有具有超级-用户的权限才能在这个软件包
的安装过程中执行它们.

要继续安装<SUNWi1cs> [y,n,?] y

安装X11 ISO8859-1 Codeset Support成为<SUNWi1cs>

##正在安装1部分- 1.
232 块

安装<SUNWi1cs>成功
-bash-3.00# pkgadd -d /cdrom/sol_10_807_x86/Solaris_10/Product SUNWi15cs

处理软件包范例<SUNWi15cs>来自</cdrom/sol_10_807_x86/Solaris_10/Product>

X11 ISO8859-15 Codeset Support(i386) 2.0,REV=2004.10.17.15.04
Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
Use is subject to license terms.
使用</>作为包的基本目录
## 正在处理软件包信息.
## 正在处理系统信息.
   6软件包路径名已经正确地安装
## 检查软件包的从属性
## 检查磁盘空间需求
## 检查同已经安装的软件包之间的冲突.
## 检查setuid/setgid程序。

在这个软件包中包含了正文程序,只有具有超级-用户的权限才能在这个软件包
的安装过程中执行它们.

要继续安装<SUNWi15cs> [y,n,?] y

安装X11 ISO8859-15 Codeset Support成为<SUNWi15cs>

##正在安装1部分- 1.
1460 块

安装<SUNWi15cs>成功

添加用户组

-bash-3.00# groupadd oinstall
-bash-3.00# groupadd dba
-bash-3.00# mkdir -p /fantlam/oracle
-bash-3.00# useradd -g oinstall -G dba -s /usr/bin/bash -d /fantlam/oracle oracle
-bash-3.00# passwd oracle
新口令:
请重新输入新口令:
passwd:oracle 的口令已成功更改
-bash-3.00# chown -R oracle:oinstall fantlam

设置环境变量
-bash-3.00# su – oracle
Sun Microsystems Inc.   SunOS 5.10      Generic January 2005
-bash-3.00$ vi .bash_profile

export PATH

ORACLE_BASE=/fantlam

ORACLE_HOME=$ORACLE_BASE/oracle

ORACLE_SID=fantlam

PATH=$ORACLE_HOME/bin:$PATH

DISPLAY=192.168.1.100:0.0

export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH DISPLAY

-bash-3.00$ exit
logout
-bash-3.00$ su – oracle
口令:
Sun Microsystems Inc.   SunOS 5.10      Generic January 2005
-bash-3.00$ env | grep ORA
ORACLE_SID=fantlam
ORACLE_BASE=/fantlam
ORACLE_HOME=/fantlam/oracle

用xftp把软件传到主机上 

图5

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 解压oracle

-bash-3.00$ ls
10202_database_solx86.zip    oracle
-bash-3.00$ unzip 10202_database_solx86.zip
-bash-3.00$ ls -l
总数 1330932
-rw-r–r–   1 oracle   oinstall 681090961  1月 24日 01:02 10202_database_solx86.zip
drwxrwxr-x   6 oracle   oinstall     512 2006   7月 25 database
drwxr-xr-x   2 oracle   oinstall     512  1月 24日 09:37 oracle
-bash-3.00$ pwd
/fantlam
-bash-3.00$ chown -R oracle:oinstall database/

 修改参数

用root用户修改 vi /etc/system
(G 去到最后一行 按ESC a插入以下代码)
set noexec_user_stack=1
set semsys:seminfo_semmni=100
set semsys:seminfo_semmns=1024
set semsys:seminfo_semmsl=256
set semsys:seminfo_semvmx=32767
set shmsys:shminfo_shmmax=4294967295
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=100
set shmsys:shminfo_shmseg=10

不需要重启

使用xstart登录到主机,可以进行图形界面操作,其实用xshell也是可以直接调出的。

图6

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 接下来跟着图一步步走

图7

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 下一步

图8 

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 选择企业版

图9

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 弹出框可以不理会

图10

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 通过了所有检查,可以继续

图11

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 仅安装软件

图12

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 开始安装

图13

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 等待

图14

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 安装完成,按照提示要执行脚本

图15

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 -bash-3.00# cd /fantlam
-bash-3.00# pwd
/fantlam
-bash-3.00# ./oraInventory/orainstRoot.sh
更改权限/fantlam/oraInventory 到 770.
更改组名/fantlam/oraInventory 到 oinstall.
脚本的执行已完成
-bash-3.00# ./oracle/root.sh
Running Oracle 10g root.sh script…

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /fantlam/oracle

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

Creating /var/opt/oracle/oratab file…
Entries will be added to the /var/opt/oracle/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.

 OK 安装成功。

图16

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程

安装软件之后我们再来创建数据库

配置监听器

-bash-3.00$ netca

图17

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 完成之后查看进程 ps -ef | grep /fantlam 可以看到监听程序已经运行起来了

-bash-3.00$ ps -ef | grep /fantlam
  oracle   751   632   0 19:39:33 pts/1       0:00 grep /fantlam
  oracle   749     1   0 19:36:46 ?           0:00 /fantlam/oracle/bin/tnslsnr LISTENER -inherit

 创建数据库

-bash-3.00$ dbca

图24

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 基本上按默认走

图25

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 起个数据库名,注意提示

图27

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 设置口令

图29

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 图32
[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 选择字符集

图34

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 图35

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 完成

图36

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 等待创建

图37

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 为scott用户解锁

图38

[置顶]        史上最详细Solaris 10上Oracle 10g安装步骤图解新手教程
 这样数据库就创建完毕

查询oracle数据库字符集
SQL> select userenv(‘language’) from dual;

USERENV(‘LANGUAGE’)
——————————————————————————–
AMERICAN_AMERICA.AL32UTF8

数据库在系统启动时候默认没有自启动

手动启动数据库

SQL*Plus: Release 10.2.0.2.0 – Production on Fri Jan 29 19:12:06 2010

Copyright (c) 1982, 2005, Oracle.  All Rights Reserved.
SQL> conn /as sysdba
Connected to an idle instance.
SQL> startup
ORACLE instance started.

Total System Global Area  289406976 bytes
Fixed Size                  1279820 bytes
Variable Size             117442740 bytes
Database Buffers          167772160 bytes
Redo Buffers                2912256 bytes
Database mounted.
Database opened.

启动监听器

-bash-3.00$ lsnrctl start

LSNRCTL for Solaris: Version 10.2.0.2.0 – Production on 29-JAN-2010 19:36:44

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

Starting /fantlam/oracle/bin/tnslsnr: please wait…

TNSLSNR for Solaris: Version 10.2.0.2.0 – Production
System parameter file is /fantlam/oracle/network/admin/listener.ora
Log messages written to /fantlam/oracle/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=unknown)(PORT=1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=unknown)(PORT=1521)))
STATUS of the LISTENER
————————
Alias                     LISTENER
Version                   TNSLSNR for Solaris: Version 10.2.0.2.0 – Production
Start Date                29-JAN-2010 19:36:46
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /fantlam/oracle/network/admin/listener.ora
Listener Log File         /fantlam/oracle/network/log/listener.log
Listening Endpoints Summary…
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=unknown)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
Services Summary…
Service “PLSExtProc” has 1 instance(s).
  Instance “PLSExtProc”, status UNKNOWN, has 1 handler(s) for this service…
The command completed successfully
-bash-3.00$
-bash-3.00$ ps -ef | grep /fantlam
  oracle   751   632   0 19:39:33 pts/1       0:00 grep /fantlam
  oracle   749     1   0 19:36:46 ?           0:00 /fantlam/oracle/bin/tnslsnr LISTENER -inherit

关闭数据库方法

SQL> shutdown immediate;