`
Cash
  • 浏览: 181344 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

Linux 5 安装 oracle 10g

 
阅读更多
1)网卡设置
安装完成后网卡无法通过自动获取ip地址激活,手动设置IP后成功激活网卡。
2)远程控制
默认已经开启SSH2端口,通过使用SecureCRT6.5.4的ssh2功能链接到linux5系统,端口22
3)文件传输
通过rz上传,sz下载命令,通过ZModem功能传输文件


安装oralce
1)修改Linux发行版本信息
我们需要手工修改Linux的发行注记,让Oracle 10g支持RedHat Enterprise Linux 5。
编辑/etc/redhat-release文件
# vi /etc/redhat-release
将其中的内容Red Hat Enterprise Linux Server release 5 (Tikanga)修改为Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
2)修改系统内核参数
# vi /etc/sysctl.conf
kernel.shmall = 2097152              //  该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,通常不需要修改kernel.shmmax = 2147483648            //  该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G
kernel.shmmni = 4096                 //  这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096 。通常不需要更改
kernel.sem = 250 32000 100 128       //  表示设置的信号量
fs.file-max = 65536                  //  表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量
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             //  发送窗口的最大大小
修改好内核参数后,执行如下命令使新的设置生效
# /sbin/sysctl -p

3)创建Oracle用户、组、安装目录
在这里我只讨论单主机环境,不考虑RAC环境的配置,在以后我会专门写一篇如何配置Oracle RAC环境的文章。
(1) 创建Oracle用户组
# groupadd oinstall
# groupadd dba
(2) 创建Oracle用户
# useradd -m -g oinstall -G dba oracle
(3) 设置Oracle用户口令
# passwd oracle
(4) 创建Oracle安装目录以及数据存放目录
# mkdir -p /DBSoftware/app/oracle
# mkdir -p /DBData/oradata
(5) 修改目录权限
# chown -R oracle:oinstall /DBSoftware/app/oracle/ /DBData/oradata/
# chmod -R 755 /DBSoftware/app/oracle/ /DBData/oradata/
5.添加以下内容到/etc/security/limits.conf
# vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
6.添加以下内容到/etc/pam.d/login
# vi /etc/pam.d/login
session required /lib/security/pam_limits.so
session required pam_limits.so
7.添加以下内容到/etc/profile
# vi /etc/profile
if [ $USER = "oracle" ]; then
    if [ $SHELL = "/bin/ksh" ]; then
        ulimit -p 16384
        ulimit -n 65536
    else
        ulimit -u 16384 -n 65536
    fi
fi



4)
配置Linux主机
检查/etc/hosts文件中是否有localhost的记录(指向127.0.0.1即可),若没有的话,在后面配置Oracle监听的时候会出现一些问题,导致无法启动监听,在此手工添加此记录即可。
5)
配置oracle用户环境变量
# su - oracle
$ vi ~/.bash_profile
增加如下内容:
export ORACLE_BASE=/DBSoftware/app/oracle  
export ORACLE_SID=orcl
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBARY_PATH=$ORACLE_HOME/lib
export PATH
umask 022
保存后使用如下命令,使设置生效:
$ source ~/.bash_profile



6)安装Oracle,并进行相关设置

1.解压缩安装文件
    Oracle的安装包有这样几种格式:
    (1) zip
    这种格式最好解压缩,直接使用命令unzip 文件名即可
    (2) cpio.gz
    这种格式有这样几种解压缩方式
    a.  # zcat XXXX.cpio.gz | cpio -idmv
    b.  # gunzip XXXX.cpio.gz解压出XXXX.cpio文件然后再 # cpio -idvm < XXXX.cpio
    解压缩完成后,设置oracle帐户可以操作安装文件所在的目录
    chown -R oracle:oinstall 安装文件所在目录

2. 用oracle帐户进入安装文件所在目录,执行如下命令即可看到安装界面:
    $ ./runInstaller
    如果无法看到安装界面,请使用root帐户执行如下命令后再运行安装程序:
    # export DISPLAY=:0.0
    # xhost +
    $ ./runInstaller


注意:

安装oracle时报错 i386 libawt.so libXp.so.6解决办法
打开Linux 安装盘, server目录中找到 libXp-1.0.0-8.1.el5.i386.rpm 安装。。。
OEL5的linux 也安装libXP就对了,安装过程选择[无论如何都安装]。

如果linux为中文系统这时,系统弹出的安装UI界面为中文并且显示不全,这时就要停止安装,关闭安装界面。在系统下输入:export LANG=en_us,将安装界面调成英文。再次使用./runInstaller命令运行安装。此时界面为英文!


    出现安装界面后,根据界面提示进行相关的设置,我的建议是在安装过程中不创建数据库,只安装程序,监听和创建数据库等安装完成后再进行相关的操作。
    安装过程中,需要使用root权限执行两个脚本。
    3. 安装完成后,将/etc/redhat-release文件中的内容修改回Red Hat Enterprise Linux Server release 5 (Tikanga)
    4.创建监听以及创建数据库,需要将用户切换至oracle用户
    su - oracle
    (1) 创建监听程序
    使用Oracle提供的NET CONFIGURATION ASSISTANT创建TNS监听
    $export LANG=en_us
    $ netca
    基本上就是一直Next就可以了,当然你也可以在这期间修改TNS的监听端口号
    TNS监听创建完成后可以使用如下命令进行检查:
    # netstat -atln    检查监听端口是否打开
    $ lsnrctl status    检查TNS监听状态
    确认监听已经成功启动后,即可执行Database Configure Assistant进行数据库的创建,执行命令如下:
    $ dbca
    在创建数据库的过程中,建议将数据库的字符集设置为Unicode UTF-8,防止出现乱码。




登陆oracle数据建立表
使用ssh工具链接linux,切换到oracle用户环境下链接到指定数据库:
$export ORACLE_SID=mhdb
$sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on Tue Nov 1 15:27:03 2011

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  553648128 bytes
Fixed Size                  1220508 bytes
Variable Size             159383652 bytes
Database Buffers          385875968 bytes
Redo Buffers                7168000 bytes
Database mounted.

Database opened.


为程序建立数据库访问用户:用户mhdbuser/密码mhdb123
SQL>create user mhdbuser identified by mhdb123;
用户授权,对用户mhdbuser授予了连接数据库和访问资源的权限
SQL>grant connect,resource to mhdbuser;
CREATE SESSION是一个系统特权,它可以为用户提供连接数据库的能力。
SQL>grant create session,dba to mhdbuser;
修改用户表空间使用users
SQL>alter user mhdbuser default tablespace users
SQL>temporary tablespace temp;

为程序建立数据库访问用户:用户mhdbuser/密码mhdb123
SQL>create user mhdbuser identified by mhdb123;
用户授权,对用户mhdbuser授予了连接数据库和访问资源的权限
SQL>grant connect,resource to mhdbuser;
CREATE SESSION是一个系统特权,它可以为用户提供连接数据库的能力。
SQL>grant create session,dba to mhdbuser;
可以改变用户的密码,将用户mhdbuser的密码改变为:oracle.
SQL>alter user mhdbuser identified by oracle;
# 锁定帐号以及解锁,注意:用户解锁后,要重启服务。
SQL>alter user mhdbuser account unlock;


使用telnet检测,linux防火墙是否放行了tcp 1521端口,以提供应用程序访问。
启用监听为程序访问提供接口:
检测实际telnet失败,通过命令开启linux端口监听,使用oracle用户输入以下命令
$lsnrctl start
此时telnet成功,说明端口以开启!



进行表的创建:

举例:建立MHDB_DATA_PROCESS表,以此类推

SQL> CREATE TABLE "MHDB_DATA_PROCESS"
  2     (       "ID" VARCHAR2(32),
  3     "CRON" VARCHAR2(255),
  4     "DELETE_EMPTY_FLODER" NUMBER(1,0) DEFAULT 0,
  5     "ENABLE_PATTERN" NUMBER(1,0) DEFAULT 0,
  6     "FLODER" VARCHAR2(300),
  7     "INGORE_SUFFIX" VARCHAR2(100),
  8     "NAME" VARCHAR2(100),
  9     "PATTERN_REGEX" VARCHAR2(300),
10     "ENABLE_LOG" NUMBER(1,0) DEFAULT 1
11     ) ;

Table created.
SQL> COMMENT ON COLUMN "MHDB_DATA_PROCESS"."ID" IS 'id';

Comment created.

SQL> 
SQL>    COMMENT ON COLUMN "MHDB_DATA_PROCESS"."CRON" IS 'cron表达式';

Comment created.

SQL> 
SQL>    COMMENT ON COLUMN "MHDB_DATA_PROCESS"."DELETE_EMPTY_FLODER" IS '是否删除空子文件夹';

Comment created.

SQL> 
SQL>    COMMENT ON COLUMN "MHDB_DATA_PROCESS"."ENABLE_PATTERN" IS '启用正则过滤';

Comment created.

SQL> 
SQL>    COMMENT ON COLUMN "MHDB_DATA_PROCESS"."FLODER" IS '目录名称';

Comment created.

SQL> 
SQL>    COMMENT ON COLUMN "MHDB_DATA_PROCESS"."INGORE_SUFFIX" IS '忽略的后缀名';

Comment created.

SQL> 
SQL>    COMMENT ON COLUMN "MHDB_DATA_PROCESS"."NAME" IS '进程名称';

Comment created.

SQL> 
SQL>    COMMENT ON COLUMN "MHDB_DATA_PROCESS"."PATTERN_REGEX" IS '正则表达式';

Comment created.

SQL> 
SQL>    COMMENT ON COLUMN "MHDB_DATA_PROCESS"."ENABLE_LOG" IS '是否记录日志';

Comment created.

SQL> 
SQL>    COMMENT ON TABLE "MHDB_DATA_PROCESS"  IS '进程信息';

Comment created.


验证表的创建是否都完成了:
select table_name from user_tables where user='SYS'

编码测试连接性:

package model;

import java.sql.*;

/**
/**
* <p>文件名称: MyConn </p>
* <p>文件描述: 数据库连接</p>
* <p>版权所有: 版权所有(C)2006-2006</p>
* <p>公    司: 中兴软件技术</p>
* <p>内容摘要: 提供一个统一的数据库连接,getConn方法获取连接实例.</p>
* <p>其他说明: 无</p>
* <p>完成日期:2006年4月18日</p>
* <p>修改记录1: </p>
* <pre>
*    修改日期:2006年4月18日
*    版 本 号:V1.1
*    修 改 人:张锋
*    修改内容:修正
* </pre>
* @version 1.1
* @author  张锋
*/
public class MyConn {

/** 静态变量 DRIVEURL 存放驱动串*/
private static final String DRIVEURL = "oracle.jdbc.driver.OracleDriver";


/** 静态变量 URL 存放连接串*/
private static final String URL = "jdbc:oracle:thin:@172.17.88.66:1521:mhdb";

/** 静态变量 USER 存放访问数据库用户名*/
private static final String USER = "mhdbuser";

/** 静态变量 PASSWORD 存放数据库连接密码*/
private static final String PASSWORD = "mhdb123";


/**
* 获取到数据库的连接实例
* @return 数据连接对象
*/
public static Connection getConn(){

Connection conn = null;
try{
Class.forName(DRIVEURL);
}catch(Exception e){
System.out.print("数据库驱动失败:");
e.printStackTrace();
}

try{
conn = DriverManager.getConnection(URL,USER,PASSWORD);
}catch(Exception e){
System.out.print("数据库登陆失败");
}

return conn;
}

/**
* 数据库连接测试
* @param arg 控制台参数
*/
public static void main(String[] arg){
Connection conn = MyConn.getConn();
try{
Statement state = conn.createStatement();
String sql = "select * from MHDB_DATA_PROCESS";
ResultSet rs = state.executeQuery(sql);
while(rs.next()){
System.out.print(rs.getString("ID"));
System.out.print(rs.getString("CRON"));
}
rs.close();
state.close();
conn.close();
}catch(Exception e){
e.printStackTrace();
}
}

}









分享到:
评论

相关推荐

    linux中安装ORACLE10g数据库详细步骤

    本文详细介绍了 Linux 中安装 ORACLE10g 数据库的步骤,包括安装前准备、配置 ORACLE 安装环境、配置内核参数、创建 ORACLE 安装目录和安装 ORACLE10g 数据库等。通过遵循这些步骤,可以成功安装 ORACLE10g 数据库在...

    Linux下安装oracle 10g

    Linux下安装oracle 10g

    Linux下Oracle 10g安装

    在Linux环境下安装Oracle数据库10g是一项复杂但必要的任务,对于数据库管理员(DBA)和想要学习如何在Linux平台上安装和配置Oracle数据库的IT专业人员来说,这是一项基础技能。以下是在Linux上安装Oracle 10g的详细...

    linux上安装oracle11g详细步骤

    Linux 上安装 Oracle 11g 详细步骤 本文将指导您在 Linux 操作系统上安装 Oracle 11g 数据库。安装过程可能会很繁琐,但按照以下步骤,您可以顺利完成安装。 安装环境 * 操作系统:Red Hat Linux 5.4 (32 位) * ...

    linux安装oracle10g完整配置文档

    Linux安装Oracle 10g完整配置文档 在本文档中,我们将详细介绍如何在 Linux 操作系统中安装 Oracle 10g 数据库。安装 Oracle 10g 需要满足一定的前提条件,并需要对 Linux 系统的内核参数进行修改。 安装前的准备...

    Red hat linux 安装oracle 11g

    "Red Hat Linux 安装 Oracle 11g" 本文将详细介绍如何在 Red Hat Linux 中安装 Oracle 11g。首先,需要准备好安装环境,包括关闭防火墙、检查 RPM 包是否安装等。然后,安装 Oracle 11g 的过程可以分为多个步骤,...

    手把手教你用VMware在Linux下安装Oracle 10g RAC

    ### 手把手教你用VMware在Linux下安装Oracle 10g RAC #### 一、准备工作 在开始安装Oracle 10g RAC之前,需要确保已经做好充分的准备工作。这包括安装必要的软件和配置合适的环境。 ##### 必备软件 1. **VMware ...

    oracle11G的linux下的离线安装教程.pdf

    "Oracle 11g 在 Linux 下的离线安装教程" 一、查看和修改主机名称 在 Oracle 11g 的安装过程中,需要查看和修改主机名称。可以使用 hostname 命令来查看当前主机名称,并使用 hostname 命令来修改主机名称。 二、...

    Linux下安装oracle10g

    在Linux系统中安装Oracle 10g是一项技术性较强的任务,尤其在Red Hat Enterprise Linux 5这样的企业级发行版上。以下将详细讲解这个过程中的关键步骤和注意事项。 首先,安装Oracle 10g的前提是确保Linux环境已安装...

    在linux中安装oracle10g

    在Linux系统上安装Oracle 10g数据库是一个相对复杂的过程,与在Windows系统上的简易安装方式不同,Linux下的Oracle数据库安装需要遵循一系列的先决条件和步骤,以确保软件能够稳定运行。以下是对这一过程的详细解析...

    Linux安装oracle11G

    Linux安装oracle11G Linux安装oracle11G是一个复杂的过程,需要完成多个步骤,包括挂盘、安装依赖项、调整内核参数等。本文将详细介绍如何在Linux系统中安装oracle11G。 一、挂盘 在安装oracle11G之前,需要挂载...

    linux下安装oracle10G

    在Linux环境下安装Oracle 10G数据库是一项技术性较强的任务,需要对操作系统和数据库系统有深入的理解。在本文中,我们将详细阐述整个安装过程,包括Linux系统的安装、配置,以及Oracle 10G数据库的安装步骤和注意...

    Linux 5.5 安装 Oracle10g(64位)

    ### Linux 5.5 安装 Oracle10g(64位)详尽步骤与注意事项 #### 一、概述 本文旨在详细介绍如何在64位Linux 5.5环境下安装Oracle10g数据库,确保安装过程顺利进行并最终实现100%的成功率。文章将覆盖从用户和组配置...

    在Linux中安装Oracle10g的主要步骤

    在Linux操作系统中安装Oracle 10g是一项复杂但必要的任务,特别是对于那些需要运行大型企业级数据库的组织。以下是在Linux上安装Oracle 10g的详细步骤: 1. **创建用户和组**:首先,你需要以root用户身份创建用于...

    在linux命令行安装oracle11g

    Linux 命令行安装 Oracle 11g 一、环境设置 在 Linux 命令行安装 Oracle 11g 需要满足一定的硬件资源要求。物理内存至少需要 1GB,交互空间也需要根据物理内存的大小进行设置。磁盘空间的要求根据不同的版本有所...

    linux静默安装oracle11g

    linux静默安装oracle11g数据库,包含oracle11g64位安装包下载地址。

    linux命令行下安装oracle10G

    Oracle 10g 在 Linux 命令行下的安装 Oracle 10g 是一种流行的关系数据库管理系统,支持在 Linux 命令行下使用静默模式安装,提供了极大的便利。下面将介绍在 Linux 命令行下安装 Oracle 10g 的方法。 一、安装前...

    linux redhat5下安装oracle11g

    标题:Linux Redhat5 下安装 Oracle11g 描述:本文将根据作者的实际安装经验,提供一步步的安装指导,旨在帮助读者顺利地安装 Oracle 11g 在 Redhat 5 操作系统下。 标签:Linux Redhat5 Oracle 安装 VMware 安装...

    中标麒麟linux安装oracle11G.docx

    中标麒麟Linux安装Oracle 11G 知识点1:中标麒麟Linux简介 中标麒麟Linux是一个基于开源操作系统的国产操作系统,具有高性价比、易用性强、安全性高的特点。中标麒麟Linux主要应用于政府、企业、教育、医疗等领域...

Global site tag (gtag.js) - Google Analytics