64位ubuntu12.04 LTS安装oracle10g笔记

(1) 把系统更新到最新,安装如下包 sudo apt-get install alien binutils gcc ia32-libs lesstif2 lesstif2-dev lib32stdc++6 lib32z1 libaio1 libc6 libc6-dev libc6-dev-i386 libc6-i386 libmotif3 make libstdc++5 rpm

(2) 创建用户

$ sudo groupadd dba

$sudo groupadd oinstall

$ sudo useradd oracle  -g oinstall -G dba

$ sudo passwd oracle

(3) 创建安装目录

$ sudo mkdir -p /u01/oracle/db

$ sudo chown -R oracle:dba /u01

$sudo chmod -R 755 /u01

(4) 修改/etc/sysctl.conf 添加如下几行到/etc/sysctl.conf

kernel.shmmax = 3147483648

kernel.shmmni = 4096

kernel.shmall = 2097152

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

修改/etc/security/limits.conf 添加如下几行到/etc/security/limits.conf

* soft nproc 2407

* hard nproc 16384

* soft nofile 1024

* hard nofile 65536

让修改后的参数生效

$ sudo sysctl -p

创建链接:

$ sudo ln -s /usr/bin/awk /bin/awk

$ sudo ln -s /usr/bin/rpm /bin/rpm

$ sudo ln -s /usr/bin/basename /bin/basename

(5) 设置用户环境

切换到oracle 用户

$ su oracle

编辑 /home/oracle/.bashrc

#增加如下内容

export ORACLE_BASE=/u01/oracle

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1

export PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_OWNER=oracle

export ORACLE_SID="trms"

 

(6) 开始做安装准备

需要在/etc/ 目录下创建一个文件redhat-release , 需要权限进行创建,创建好后添加如下内容

$ sudo vim /etc/redhat-release

#添加

Red Hat Linux release 4.1

(7) 安装 oracle

然后运行如下命令 , 就进入 oracle 的安装界面了

$ ./runInstaller

 

(8) 安装过程中遇到的问题:

  1. 在安装的过程中会报各种错误,但是最好是时刻查看一下 $ORACLE_HOME/oraInventory/logs installActions 开头的日志,这个日志里面显示的内容比较全。出错信息也比较多。

    2. 因为在前面的配置文件中设置了 $ORACLE_SID 等于 trms,所以在安装的过程中最好默认选择这个,并要记录下你的 global database name database password 信息

    3. 在安装的过程中遇到了 ora-27125 unable to create shared memory segment 的错误,这个时候查看 installerActions 日志,会有详细信息,因为每次安装的错误原因都不一样, 所以可能解决方式都会不一样,但是我这个错误网上写的是 export DISABLE_HUGETLBFS=1 ,但是不太生效,我查了很多资料终于搞清楚了,要解决该问题,在 Oracle 用户下执行 $export DISABLE_HUGETLBFS=1

     # cd $ORACLE_HOME/bin

   # mv oracle oracle.bin

   # cat >oracle <<"EOF"

   #!/bin/bash

   export DISABLE_HUGETLBFS=1

   exec $ORACLE_HOME/bin/oracle.bin $@

   EOF

   #chmod +x oracle

    这样解决问题后,后面的安装就很顺畅,这个问题不解决,后面就进行不下去,当然可能产生这个错误的原因是别的,要自己尝试

4 .Error in invoking target 'all_no_orcl ihsodbc' of makefile '/u01/oracle/db_1/rdbms/lib/ins_rdbms.mk'. See '/u01/oracle/oraInventory/logs/installActions2010-08-02_02-14-48PM.log' for details.
出现这个问题, 是因为oracle编译时需要用libstdc++.so.5 ,解决办法: 

a:做个软链接

sudo ln -s /usr/lib/libstdc++.so.6 /usr/lib/libstdc++.so.5(一般使用这种方法就可以解决,如果此方法无法解决,那么请往下看)
 
b:你的libstdc++.so版本过高,这样你需要下载libstdc++.so.5,现特别附上下载地址: http://packages.ubuntu.com/jaunty/libstdc++5
 
c:你的系统没有安装libstdc++.so,知道该怎么做了吧.
5. Error in invoking target 'install' of makefile '/u01/oracle/product/10.2.0/db_1/sqlplus/lib/ins_sqlplus.mk'.See '/u01/oracle/oraInventory/logs/installAction2012-11-1-_07-10-38AM.log' for details.
sqlplus/lib/env_sqlplus.mk中添加行EXPDLIBS=-lclntsh

  6 . 安装到最后会弹出一个界面,提示 需要用 root 用户去运行两个脚本文件 orainstRoot.sh root.sh 这个时候不要点 OK ,打开终端用 root 进行登录,执行就可以了。 如果需要安装配置新的数据库,则输入命令 dbca 就可以了,其实在 oracle 安装过程中会默认创建一个数据库的也就是我们配置的 orcl ,所以在安装的过程中就会在后台自动调用 dbca ,如果安装过程不出错,后面调用 dbca 的时候也不会出错。

============================================================================================

oracle 的卸载,在 linux 下卸载 oracle 非常容易,命令如下:

    1. 运行 $ORACLE_HOME/bin/localconfig delete

   2. rm -rf $ORACLE_BASE/*

   3. rm -f /etc/oraInst.loc /etc/oratab

   4. rm -rf /etc/oracle

   5. rm -f /etc/inittab.cssd

   6. rm -f /usr/local/bin/coraenv /usr/local/bin/dbhome /usr/local/bin/oraenv

    7. rm -rf $ORCLE_HOME

   

  Oracle 安装完后,并不能立即在数据库中建表,必须先创建该数据库的用户,并且为该用户指定表空间。

       先用 sqlplus /nolog 登录

然后 connect / as sysdba 或者 connect sys/sys 的密码 @ 数据库名 as sysdba

1 . 假如现在已经建好名为 'news' 的数据库,此时在 /oracle/product/10.1.0/oradata/ 目录下已经存在 news 目录(注意:我的 Oracle10g 安装在 /oracle 下,若你的 Oracle 安装在别的目录,那么你新建的数据库目录就在 */product/10.1.0/oradata/ 目录下)。

    2. 在创建用户之前,先要创建表空间:

    其格式为:格式 :  create tablespace 表间名 datafile ' 数据文件名 ' size 表空间大小 ;

    如:

    SQL> create tablespace news_tablespace datafile 'F:\oracle\product\10.1.0\oradata\news\news_data.dbf' size 500M;

    其中 'news_tablespace' 是你自定义的表空间名称,可以任意取名; 'F:\oracle\product\10.1.0\oradata\news\news_data.dbf' 是数据文件的存放位置, 'news_data.dbf' 文件名也是任意取; 'size 500M' 是指定该数据文件的大小,也就是表空间的大小。

 

    3. 现在建好了名为 'news_tablespace' 的表空间,下面就可以创建用户了:

    其格式为:格式 :  create user  用户名 identified by 密码   default tablespace 表空间表 ;

    如:

    SQL> create user news identified by news default tablespace news_tablespace;

    默认表空间 'default tablespace' 使用上面创建的表空间。

 

    4. 接着授权给新建的用户:

    SQL> grant connect,resource to news;  -- 表示把 connect,resource 权限授予 news 用户

    SQL> grant dba to news;  -- 表示把 dba 权限授予给 news 用户

    授权成功。

     ok! 数据库用户创建完成,现在你就可以使用该用户创建数据表了!

 
 
 
原文地址:https://www.cnblogs.com/kakafra/p/2764605.html