Chinaunix首页 | 论坛 | 博客
  • 博客访问: 54457
  • 博文数量: 27
  • 博客积分: 930
  • 博客等级: 准尉
  • 技术积分: 290
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-22 14:30
文章存档

2010年(27)

我的朋友

分类: LINUX

2010-03-29 14:40:26

1 以根用户root登陆

       在您安装Oracle软件之前,您必须以根用户身份完成几项工作。您需完成以下几项工作:

注:您必须安装该软件从X窗口工作站,一个X终端或一个PC或安装了X服务软件的其它系统。

如果您正从一个X窗口系统工作站或一个终端中安装:

(1)   打开一个本地终端会话

(2)   如果没有在本地系统上安装的话,键入下述命令使得使用远程主机在当地X服务器上显示X应用程序。

# xhost +

(3)   如果您不是在本地安装,则使用ssh,rlogintelnet命令

#telnet remote_host

(4)   如果您没以根用户登陆,使用以下命令

#su – root

password:

2 检查硬件需求

       (1)所需的硬件条件

Requirement

Minimum Value

Physical memory (RAM)

256 MB (262144 KB)

Swap space

512 MB (524288 KB) or twice the size of RAM

On systems with 2 GB or more of RAM, the swap space can be between one and two times the size of RAM

Disk space in /tmp

400 MB (409600 KB)

Disk space for software files

Between 150 MB (153600 KB) and 650 MB (665600 KB) of disk space, depending on the installation type that you choose

       (2)键入如下命令查看当前机器硬件条件:

       #cat /proc/meminfo | less   ;分页显示机器所有相关信息

       或分别查看各项

       #grep MemTotal /proc/meminfo

       #grep SwapTotal /proc/meminfo

#df –h /tmp  如果此空间小于400MB,则进行如下操作:

A删除/tmp所有元用的文件释放空间;

B在后面oracle用户设置的环境变量中加入TEMPTMPDIR

C扩充文件系统中包含/tmp的目录。如果必要,请与系统管理员联系扩充文件系统

#df –h 查看硬盘有效空间的大小      

       (3)如果显示的参数不能满足上面的需求,则对所需的相关参数进行设置

查看系统设置

#sysctl –p 或 #more /etc/sysctl.conf | grep kernel

更改系统设置

#vi /etc/sysctl.conf

kernel.shmmax=1073741824  ;内存为1

kernel.shmmni=4.96       ;最小共享内存

kernel.shmall=2097152     所有共享内存大小

kernel.sem=25032000100128

fs.file_max=65536

3 检查软件需求

(1)    软件条件

Red Hat Enterprise Linux ES/AS 2.1 (Update 3 or higher)

·         Kernel version 2.4.9 errata 34 (e.34) or higher must be installed

·         The following packages (or later versions) must be installed:

·                make-3.79
·                openmotif-2.1.30
·                gcc-2.96-128
·                gcc-c++-2.96-128
·                libstdc++-2.96-128
·                glibc-2.2.4-32

(2)    查看当前系统版本

#cat /etc/issue      是何系统

#rpm –qa | grep  package_name  是否不相应的软件

#uname –r        版本号

4 创建所需的UNIX用户组和用户

如果用户oinstall用户组(Oracle清单组)或oracle用户(Oracle软件拥有者)不存在,则需要创建,请按照以下步骤:

#/usr/sbin/groupadd oinstall  //创建用户组

#grep oinstall /etc/group   查看新创建的组

#/usr/sbin/groupadd dbal  //创建用户组

#/usr/sbin/useradd –g oinstall –G dba oracle  //创建用户 oinstall是主组dba 是可行辅助组

#passwd oracle   建立密码

#id oracle    查看新建的用户

5 创建的Oracle基础目录

/u01/app/oracle

 

The Oracle base directory must have between 150 MB (153600 KB) and 650 MB (665600 KB) of free space depending on the installation type you choose:

Installation Type

Requirement for Software Files (MB)

Instant Client

150

Administrator

650

Runtime

350

# mkdir -p /u01/app/oracle        建立文件夹

# chown -R oracle:oinstall /u01/app/oracle  更改用户和用户组

# chmod -R 775 /u01/app/oracle      更改访问权限

6 以用Oracle户登陆并且配置Oracle用户环境

打开一个终端

#xhost +

#su – oracle

#echo $SHELL

·         Bash shell (bash) on Red Hat:

·                      $ vi .bash_profile
·                       

·         Bourne shell (sh), Bash shell on SUSE, or Korn shell (ksh):

·                      $ vi .profile
·                       

·         C shell (csh or tcsh):

·                      % vi .login

 

如果显示为/bin/bash,则编辑文件.bash_profile

#vi .bash_profile  //Shell的启动文件

umask 022    缺少文件创建模式屏蔽字

 

TEMP=/directory      如果目录没有足够的磁盘空间/tmp

$ TMPDIR=/directory

$ export TEMP TMPDIR

 

DISPLAY=local_host:0.0 ; export DISPLAY   指定X应用程序显示 local_host为主机名或为IP

 

unset ORACLE_HOME  保证此两个变量没有被设置过

unset TNS_ADMIN

 

umask   证明环境变量已经设置正确

env | more

 

oracle 用户.bash_profile

#!/bin/bash

export TEMP=/tmp

export TMPDIR=/tmp

export ORACLE_BASE=/opt/oracle

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

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

export ORACLE_OWER=oracle

export ORACLE_SID=biasdw

export ORACLE_TERM=vt100

#export LD_ASSUME_KERNEL=2.4.1

export THREADS_FLAG=native

export ORA_NLS33=/opt/oracle/oracle/product/10.2.0/db_1/ocommon/nls/admin/data

export NLS_LANG=AMERICAN_america.ZHS16GBK

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib

 

保存并退出此文件的编辑

 

/………………….

JAVA环境设置

export CLASSPATH=.:/usr/local/java/lib:/usr/local/jre/lib

export JAVA_HOME=/usr/local/java

ORACLE数据库环境设置

export ORACLE_BASE=/home/oracle

export ORACLE_HOME=$ORACLE_BASE

export ORACLE_SID=myDB

export ORACLE_TERM=vt100

export ORACLE_OWNER=oracle

export TNS_ADMIN=$ORACLE_HOME/network/admin

JDBC和SQLJ的编译和运行环境

export CLASSPATH=”$CLASSPATH:$ORACLE_HOME/jdbc/lib/classes111.zip

export CLASSPATH=”$CLASSPATH:$ORACLE_HOME/jdbc/lib/nls_charset11.zip

export CLASSPATH=”$CLASSPATH:$ORACLE_HOME/sqlj/lib/runtime12.zip

export CLASSPATH=”$CLASSPATH:$ORACLE_HOME/sqlj/lib/translator.zip

设置搜索路径

export PATH=$PATH:/usr/local/java/bin:/usr/local/jre/bin:/bin:/sbin

export PATH=$PATH:/usr/bin:/usr/sbin:/usr/local/bin:$ORACLE_HOME/bin

………………..

#ls –l .bash_profile             //查看文件属性

#chmod +x .bash_profile  //若文件不能执行则更改文件属性

#../.bash_profile                //运行此文件,使更改生效

7 安装客户端

设置语言支持.由于ORACLE安装界面中文支持不好,建议运行
export LC_ALL=en_us,
否则容易出现乱码.

7.1 将安装文件放在准备的目录

#mount –t iso9660 –o loop 10g_linux_x86_client_10_1_0_3.iso  /mnt 挂载安装文件

#cd /mnt  进入目录

#cp –rf * /home/oracledisk  将所有文件拷贝到其它目录下

#umount /tmp  //卸载了虚拟光驱文件

 

7.2 针对安装在Fedora系统上的特定修改

因为ORACLE10g不支持FC4,所以需作必要修改,找到文件./Disk1/install/oraparam.ini

#cd /home/oracledisk/install

#chmod +w oraparam.ini

#vi oraparam.ini

删除如下内容(记得先备份)
[Certified Versions]

Linux=redhat-2.1,redhat-3,SuSE-9,SuSE-8,UnitedLinux-1.0

[UnitedLinux-1.0-optional]

TEMP_SPACE=80

SWAP_SPACE=150

MIN_DISPLAY_COLORS=256
[Linux-redhat-2.1-optional]
TEMP_SPACE=80
SWAP_SPACE=150
MIN_DISPLAY_COLORS=256
[Linux-redhat-3.0-optional]
TEMP_SPACE=80
SWAP_SPACE=150
MIN_DISPLAY_COLORS=256
[Linux-SuSE-9-optional]

TEMP_SPACE=80
SWAP_SPACE=150
MIN_DISPLAY_COLORS=256
[Linux-SuSE-8-optional]
TEMP_SPACE=80
SWAP_SPACE=150
MIN_DISPLAY_COLORS=256


现在运行./runInstall.安向导往下走就可以了

9 成功安装的下一步

       如果你已经成功安装了Oracle客户端,请乍Oracle数据库客户端安装手册第4章,这里有关于所需的和可选的后续安装步骤

创建用户和表

$sqlplus system/manager

SQL>create user userlidentified by test default tablspace users;

SQL>grant connect to user1

SQL>grant resource to user1;

SQL>connect user1/user1;

SQL>create table student(id number,name varchar2(20),score number);

SQL>insert into student values(1,”lilin’,99);

Pro*C编程

(1)$vi stu.pc

(2)proc PARSE=NONE stu.pc

(3)gcc –o stu stu.c $ORACLE_HOME/lib/libclntsh.so

examples:

#include

EXEC SQL INCLUDE SQLCA;

void main()

{

       EXEC SQL BEGIN DECLARE SECTION;

VARCHAR user[20],pass[20],serv[20];

char name[8];

int id,score;

EXEC SQL END DECLARE SECTION;

strcpy(usr.arr “test”);

usr.len=(unsigned short)strlen((char*)usr.arr);

strcpy(pass.arr,”test”);

pass.len=(unsigned short)strlen((char*)pass.arr);

strcpy(serv.arr,”myDB”);

pass.len=(unsigned short)strlen((char*)serv.arr);

EXEC SQL CONNECT :usr IDENTIFIED BY :pass USING:serv;

printf(“connect!\n”);

printf(“input student code:”);

scanf(“%d”,&id);

EXEC SQL SELECT  id,name,score into :id, :name,:score from student where id=:id;

printf(“Name=%s score=%d”,name,score);

EXEC SQL COMMIT WORK RELEASE;

printf(“disconnect”);

}

 

 

注:想翻些有用的文章在机器里,找到了这篇,但实在是太久的事情了,我也弄不太清这篇是不是我总结和整理的,但隐约对前面的内容有印象,后面Oracle配置中系统环境的设置,现在已经不需要那么麻烦了,再往后的Java,以及Fedora的配置我也不确定是对的啊,请大家在看的时候多注意。

 

阅读(1910) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~