• 相关软件
    >CentOS6.0安装oracle文档 创建者:zhangbinglei 更新时间:2012-01-05 12:01

                                              CentOS6.0安装oracle文档
     
    CentOS6.0是安装好的,这里省略1万字……
     
    下面提到的命令都是在终端里面执行,或者远程客户端终端连接器(Putty)上执行
     
    安装准备
    1、对比安装包(相当于安装SQL2008时必须有.net3.5的环境,下面的安装包就相当于.net3.5)
    binutils
    compat-libstdc++
    elfutils-libelf、elfutils-libelf-devel
    glibc、glibc-devel
    gcc
    gcc-c++
    libaio、libaio-devel
    libgcc
    libstdc++、libstdc++-devel
    libXp、libXp-devel
    libxt、libxt-devel
    make
    sysstat
    unixODBC、unixODBC-devel
    (注意glibc包的安装,安装次序为:glibc-2.12-1.7.el6.i686,glibc-devel-2.12-1.7.el6.x86_64,glibc-devel-2.12-1.7.el6.i686)
    使用命令rpm -qa | grep "要找的安装包名字",比如:rpm –qa | grep binutils 回车,返回:binutils-2.17.50.0.6-9.el5,说明已经安装了这个软件包
     
    这里装不全也没关系,等到正式运行oracle安装的时候,如果不全会有异常,根据异常提示逐条安装也是可以的。
     
     
    2、建立用户和组,设置安装目录
    groupadd oinstall(创建用户组oinstall)
    groupadd dba(创建用户组dba)
    mkdir –p /fantlam/oracle
    (建立目录 mkdir命令:-p 确保目录名称存在,不存在的就建一个)
    useradd -g oinstall -G dba -d /fantlam/oracle oracle(添加oracle用户到oinstall组dba副组 到/fantlam/oracle目录中)
    passwd oracle(设置密码)
    在oracle用户添完后,需要检查错误。
    [oracle@yans1 ~]$ id oracle
    uid=500(oracle) gid=502(oinstall) groups=502(oinstall),501(dba)
    [oracle@yans1 ~]$ more /proc/sys/vm/hugetlb_shm_group
    0
    下面用root执行下面的命令,将dba组添加到系统内核中:
    # echo 501 > /proc/sys/vm/hugetlb_shm_group(这里的501是上面dba的值,不一定就是501
    然后启动数据库,问题消失。
    创建数据库前,最好也进行此more操作,若返回0,表示仍未更改,还需更改才能安装成功
    chown -R oracle:oinstall /fantlam(改目录组)
    3、  检查域名,防止出现莫名其妙的问题
    输入cat /etc/nsswitch.conf | grep hosts回车
    返回:
    #hosts:     db files nisplus nis dns
    hosts:      files dns
     
    输入hostname回车
    返回:
    localhost.localdomain(机器名)
     
    输入domainname回车
    返回:
    (none)(没有域就为none,有域的话会显示域名)
     
    输入cat /etc/hosts回车
    两种情况
    a、如果返回
    # Do not remove the following line, or various programs
    # that require network functionality will fail.
    192.168.8.21               localhost.localdomain localhost
    127.0.0.1               localhost.localdomain localhost
    ::1             localhost6.localdomain6 localhost6
    则无需处理
    b、如果返回
    # Do not remove the following line, or various programs
    # that require network functionality will fail.
    127.0.0.1               localhost.localdomain localhost
    ::1             localhost6.localdomain6 localhost6
    则需要把代表服务器IP的那一段加上(把相应ip改成服务器的ip)
     
    命令:vi /etc/hosts
    然后移动光标到要输入的位置,按i键进入编辑状态,输入或粘贴内容
    按ESC退出编辑状态,输入大写的ZZ,Z键点击2次,保存并退出。
     
    关于VI编辑器的问题:
    i键,进入编辑状态
    ESC,退出编辑状态
    ZZ,保存并退出或者:wq回车,不管是哪种退出,必须先按ESC1次最好2次,确保退出编辑状态了,如果没有退出编辑状态,保存或退出命令是无效的,而且会编辑内容,如果没有注意会导致很严重的问题。


    4、修改配置
    下面要修改3个重要:/etc/sysctl.conf、/etc/security/limits.conf及/etc/profile
    如果对vi编辑还没有把握的话,那么修改之前请复制一个备份。
    命令如下:
    cp /路径/文件名 /路径/文件名.bak
    以/etc/sysctl.conf为例
    cp /etc/sysctl.conf /etc/sysctl.conf.bak
     
    看清楚[root@localhost /]#,这3个文件都是以root用户来修改的(注意这三个操作的目录是在/
    用vi命令打开对应的文件,然后把下面的内容分别复制粘贴到打开文件的最下面,保存即可
    [root@localhost /]#vi /etc/sysctl.conf
    kernel.shmall = 2097152
    kernel.shmmax = 2147483648
    kernel.shmmni = 4096
    kernel.sem = 250 32000 100 128
    net.ipv4.ip_local_port_range = 1024 65000
    net.core.rmem_default = 262144
    net.core.rmem_max = 4194304
    net.core.wmem_default = 262144
    net.core.wmem_max = 262144
     
    [root@localhost /]#vi /etc/security/limits.conf
    oracle              soft    nproc   2047
    oracle              hard    nproc   16384
    oracle              soft    nofile 1024
    oracle              hard    nofile 65536
     
    [root@localhost /]# 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
     
    关于用户切换问题:
    Oracle用户切换到root用户su root 或者su - root
    Root用户切换到oracle用户su oracle或者su - oracle
    以上两种写法都是可以的,但是这里强调一下,我们这里切换用户请加上”-”(注意横线前后都有空格),因为我们这里在改配置,有横线的命令可以把配置的环境带过去,没有横线的是不行的。
    5、  配置环境变量
    下面配置两个环境变量文件.bashrc和.bash_profile
    .bash_profile文件以oracle用户来配置,如果是在root用户下,输入命令su – oracle回车,切换到oracle用户下,使用vi命令直接创建,然后把下面的内容复制粘贴进去,退出保存。
    [oracle@localhost ~]$ vi .bash_profile(设置环境变量)
    export PATH
     
    ORACLE_BASE=/fantlam
    ORACLE_HOME=$ORACLE_BASE/oracle
    ORACLE_SID=fantlam
    PATH=$ORACLE_HOME/bin:$PATH
     
    export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
     
     
    .bashrc文件以root用户来配置,同样如果是在oracle用户下,要切换到root,输入命令su – root回车,输入密码回车
    使用vi命令创建,然后把下面的内容复制粘贴到文件中,保存退出,并使用exit命令退出,让设置生效
    [root@localhost /]# vi .bashrc
    if [ -f ~/.bashrc ]; then
           . ~/.bashrc
    fi
     
    PATH=$PATH:HOME/bin
     
    export PATH
     
    export PATH
     
    ORACLE_BASE=/fantlam
    ORACLE_HOME=$ORACLE_BASE/oracle
    ORACLE_SID=fantlam
    PATH=$ORACLE_HOME/bin:$PATH
     
    export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
     
    完成以后我们切换回oracle用户来查看一下
    输入su – oracle回车
    输入env|grep ORA回车
    应返回:
    ORACLE_SID=fantlam
    ORACLE_BASE=/fantlam
    ORACLE_HOME=/fantlam/oracle
    三、安装oracle
    1、解压缩文件,修改文件
    如果是在远程的话,之前准备的工具FileZilla就排上用处了,比如oracle的安装包在你机器上,这时就可以通过这个软件传到服务器上去了。
    如果是压缩包,可以使用命令:gunzip 文件名,进行解压缩。
    gunzip 10201_database_linux_x86_64.cpio.gz回车
    得到10201_database_linux_x86_64.cpio
    cpio -idmv < 10201_database_linux_x86_64.cpio
    得到database文件夹
    然后我们移动解压缩出来的database文件夹到我们配置的安装目录下
    命令:mv database/ /fantlam
    命令:cd /fantlam
    命令:chown -R oracle:oinstall database/
    到这里,所有的准备工作基本完成了,但是,开头我提到过,oracle是不支持CentOS的,所以这里我们还有两个步骤需要做
    一是修改一个文件,绕过oracle的验证
    命令:cd /
    命令:vi /etc/redhat-release
    命令:将CentOS release 6.0 (Final) 修改成redhat 3或者redhat 4
    保存并退出
     
    2、安装oracle
    切换到oracle用户下安装,root用户下是无法安装的(不是在命令行切换,是用oracle登陆,再进行操作
    [root@localhost ~]# su – oracle
    [oracle@localhost ~]$ export LANG=en_US (设置oracle安装界面为英文,中文可能出现乱码)
    [oracle@localhost ~]$ ls
    [oracle@localhost ~]$ cd fantlam/
    [oracle@localhost fantlam]$ ls
    database  oracle
    [oracle@localhost fantlam]$ cd database/
    [oracle@localhost database]$ ls
    doc  install  README  runInstaller  stage  welcome.html
    [oracle@localhost database]$ ./runInstaller
    正在启动 Oracle Universal Installer…
    之后的安装就跟windows下是一样的了,图形界面,这需要再服务器上直接操作,当然也可以使用远程工具,比如Xmanager,这里不在描述。
     
    (安装过程中有一个警告,点yes;还有两个提示,点击continue即可)

    最后,安装快结束的时候,有两条基本需要执行一下。两条脚本执行完了再点确定。如下图:

    切换到root用户:su – root
    进入文件夹:cd /fantlam
    查看该目录:ls
    执行脚本:oraInventory/orainstRoot.sh
    执行脚本:oracle/root.sh
     
    3、创建数据库
    到此,oracle安装算是完成了,如果安装时仅安装了软件,没有创建数据库,那么下面就是创建数据库了。
    创建数据库也是图形界面,在oracle用户下输入dbca回车,如果安装正确的话会弹出图形界面。(整个过程详见文档《用Oracle_DBA_工具创建新数据库》)
    数据库字符集的配置
    整个配置过程中,必须对数据库字符集进行配置。没有正确配置的话,数据库中数据会出现乱码。通常可以在dbca配置过程中进行字符集的配置。若你在dbca配置过程中没有正确配置,也可在命令行修改字符集。
    1)dbca配置过程中配置
    图形界面下,可以一直点下一步进行配置。需要注意的是,在步骤10中,有四个选项,选择字符集,对数据库的字符集进行设置,我们选择的是Simplified Chinese ZHS15GBK
    2)命令行修改
    $sqlplus /nolog
    SQL> conn / as sysdba;
    Connected.
    SQL> SHUTDOWN IMMEDIATE;
    Database closed.Database dismounted.ORACLE instance shut down.
    SQL> STARTUP MOUNT;
    ORACLE instance started.Total System Global Area 2147483648 bytes
    Fixed Size     
    2022144 bytes Variable Size        
     486540544 bytes Database Buffers
    1644167168 bytes Redo Buffers   
     14753792 bytes Database mounted
    SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
    System altered.
    SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
    System altered.
    SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
    System altered.
    SQL> ALTER DATABASE OPEN;
    Database altered.
    SQL> ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK;
    Database altered.
    SQL> ALTER DATABASE national CHARACTER SET INTERNAL ZHS16GBK;
    ALTER DATABASE national CHARACTER SET INTERNAL ZHS16GBK                                       *ERROR at line 1: ORA-00933: SQL command not properly ended
    SQL> SHUTDOWN IMMEDIATE;
    Database closed.Database dismounted.ORACLE instance shut down.
    SQL> STARTUP ORACLE
    instance started.Total
     System Global Area
    2147483648 bytes Fixed Size      
    2022144 bytes Variable Size 
    486540544 bytes Database Buffers
     1644167168 bytes Redo Buffers 
     14753792 bytes Database mounted.
    Database opened.
     
     
    dbca:数据库配置助理,进行数据库安装、删除和修改。
    netca:数据库网络服务配置管理。
    netmgr:数据库网络服务和监听配置助理。
    lsnrctl start:启动数据库监听。
    lsnrctl stop:关闭数据库监听。
    lsnrctl status:察看数据库监听运行状态。
    emctl start dbconsole 启动oracle EM 管理。
    emctl stop dbconsole 关闭oracle EM管理。
    dbstart:启动数据库。
    dbshut:关闭数据库。
     
    4、em登陆,添加用户,建表空间
    安装好了,如果在linux上登录em,所有的按钮显示的是方框乱码,这时最好是在远程,通过windows IE来登录,当然要linux上系统-管理-防火强-禁用-应用,不然远程是连不上的。
    然后打开IE,工具-选项-语言-添加-英语(美国),并把英语移动到中文上面,应用-确定。
    这时通过IE,输入em地址:http://ip/em,可现实英文版的em,无乱码。
     
    5、导入数据
    imp
    Import file: expdat.dmp > /home/ggc/ggc.dmp
    Enter insert buffer size (minimum is 8192) 30720> 30720 Export file created by EXPORT:V10.02.01 via conventional path import done in US7ASCII character set and AL16UTF16 NCHAR character set import server uses WE8ISO8859P1 character set (possible charset conversion)export client uses ZHS16GBK character set (possible charset conversion)
    List contents of import file only (yes/no): no > no
    Ignore create error due to object existence (yes/no): no > no
    Import grants (yes/no): yes > yes
    Import table data (yes/no): yes > yes
    Import entire export file (yes/no): no > yes
     
    相关文章
    本页查看次数: