操作系统

[oracle@RAC02 ~]$ lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: OracleServer
Description: Oracle Linux Server release 6.6
Release: 6.6
Codename: n/a
[oracle@RAC02 ~]$

数据库版本

oracle-xe-11.2.0-1.0.x86_64.rpm.zip

oracle-xe-11.2.0-1.0.x86_64.rpm

SQL> select * from V$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
PL/SQL Release 11.2.0.2.0 - Production
CORE 11.2.0.2.0 Production
TNS for Linux: Version 11.2.0.2.0 - Production
NLSRTL Version 11.2.0.2.0 - Production

安装过程

在安装之前要注意,oracle对于系统的空间是有要求的,安装前可以查看下:

一、使用free -m查看交换空间大小,oracle XE 要求至少有1.2G 的交换空间,扩充的方法在我另外一篇博文上已经说明。传送门 http://www.linuxidc.com/Linux/2012-08/66973.htm

使用df -h查看tmpfs的大小,oracle XE 在init.ora文件中给出了最低要求,默认是1G 。

这里我们要把tmpfs扩充为2G:

1.修改/etc/fstab文件:

找到此行:tmpfs                   /dev/shm                tmpfs   defaults      0 0

修改为:    tmpfs                   /dev/shm                tmpfs   defaults,size=2048M      0 0

2.重新加载tmpfs:

使用命令:

#umount /dev/shm; mount /dev/shm;

然后输入

df -h /dev/shm查看输出:

Filesystem            Size   Used    Avail Use% Mounted on
tmpfs                      2.0G  492M  1.6G  25%    /dev/shm

说明重新加载成功。 【Linux公社 http://www.linuxidc.com 】

二、做完这些,我们还要做一些安装一些依赖包:

yum install libaio*

来安装libaio包

之后解压安装包,

unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip

进入Disk1文件夹

安装解压后的rpm包

rpm -ivh oracle-xe-11.2.0-1.0.x86_64.rpm

三、修改/etc/profile文件,添加如下内容:

# Oracle Settings

TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/xe; export ORACLE_HOME
ORACLE_SID=XE; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
TNS_ADMIN=$ORACLE_HOME/network/admin
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

if [ $USER = "oracle" ]; then
  if [ $SHELL = "/bin/ksh" ]; then
    ulimit -p 16384
    ulimit -n 65536
  else
    ulimit -u 16384 -n 65536
  fi
fi

修改完后使用命令 # source /etc/profile 重新加载改文件。

输入 echo $ORACLE_BASE修改是否成功。

四、修改/etc/hosts文件,添加如下内容:

127.0.0.10 hostname(hostname根据实际情况填写)

五、以super user身份运行以下脚本进行配置:

# /etc/init.d/oracle-xe configure

包括http的端口,如果你的服务器上运行了tomcat 而且没有改过端口配置 要把默认的8080端口换掉以免冲突。

另外,程序还会要求你为默认管理员账户 sys 设置密码。随后会等待一段时间,请耐心。

安装结束后,系统会自动建立一个名为oracle的用户,home dir位置在 /u01/app/oracle 也就是数据库安装的位置。

六、切换只oracle用户 使用sqlplus链接数据库

sqlplus /nolog

进入sqlplus控制台

SQL> connect as sysdba

提示输入用户名密码: 使用sys/password登录

启动并装载数据库

SQL>  startup mount

11g xe版本已经内置了一个设置好的数据库 XE, 因此不许要手动创建数据库,但是需要初始化数据库结构

运行一下两行代码:

SQL> @?/rdbms/admin/catalog.sql
SQL> @?/rdbms/admin/catproc.sql

等待出现提示complete之后,进行下一步。

如果运行过程中出现database didn‘t open 则需要重新启动并装载数据库。 【Linux公社 http://www.linuxidc.com 】

接下来创建用户,初始数据库中应当已经存在users表,因此直接插入数据就可以了:

SQL> create user myaccount
      2   identified by “mypassword”
      3   default tablespace users;

授权用户:

SQL> grant dba to myaccount;

之后可以exit然后用该用户登录。

插表测试:

SQL> create table test_table (txt varchar2(100) not null);
SQL> insert into test_table values('Hello world !');

插入数据成功后查询

SQL> select * from test_table;

如果查询成功,那么恭喜你,大功告成了!

一些问题:

如果出现错误:

ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist

一般是由于数据库没有启动,需要以DBA身份登录数据库后输入startup

在做之前请确保/u01/app/oracle/product/11.2.0/xe/dbs/文件夹中 存在init<SID>.orc文件存在

ORA-00845:MEMORY_TARGET not supported on this system

请查看你的init.orc文件中memory_target项中的值是否小于tmpfs,否则请扩充tmpfs容量。

ORA-44410:XE edition single instance violation error

XE版本中只能有唯一一个instance,笔者安装时,程序自动生成了一个叫做XE的instance并且路径已经设置好,至于如何添加新的instance请高人指明。

或者

保证你环境变量没有以'/'结尾 同时TNS_ADMIN变量已经设置。至于为什么这么改..希望有高人也能告诉我。

ORA-01261:Parameter db_recovery_file_dest destination string connot be translated

ORA-01262:Stat failed on a file destination directory

关于这个错误,比较无语,在init.orc中,db_recovery_file_dest destination 这一项的初始值是"<ORACLE_BASE>/flash_recovery_area"

如果你只修改了<ORACLE_BASE>你就会得到这个错误,因为在$ORACLE_BASE下只有一个文件叫做fast_recovery_area,把后面的文件名修改匹配后,问题解决。

Linux下Oracle 11G XE 安装笔记的更多相关文章

  1. linux 下oracle 11g静默安装(完整版)

    1.操作系统及Oracle版本Linux版本:CentOS release 6.5Oracle版本:Oracle Database 11g Release 2 (11.2.0.1.0) for Lin ...

  2. Windows下Oracle 11g的安装

    Windows下Oracle 11g的安装 Windows下Oracle 11g的安装: Windows:64位, Oracle 11g版本:win64_11gR2_database_1of2(安装包 ...

  3. Linux 6.x 下Oracle 11g R2 安装配置

    Oracle 11g R2 数据库安装硬件配置要求: 最小内存 1 GB of RAM 虚拟内存容量,这个oracle也有要求,不用担心此时的swap分区不够oracle的要求 .虚拟内存swap如何 ...

  4. Linux下Oracle数据库的安装

    记录详细过程以备使用 一.准备安装 为了确保Oracle数据库11g能够成功安装,您需要做好准备工作,例如检查网络配置.更改Linux内核参数.创建用户Oracle.创建安装目录.设置用户Oracle ...

  5. Centos6.5下Oracle 11g R2安装过程

    1准备 CentOS-6.5-x86_64-bin-DVD1 linux_11gR2_database_1of2 linux_11gR2_database_2of2 VMware Workstatio ...

  6. windows下oracle 11g r2 安装过程与卸载详细图解

    Oracle 11g安装 1.解压下载的包,然后进入包内,点击setup.exe开始安装 . 2.出现如下:一般把那个小对勾取消,点击下一步进行, 弹出下图这个后点‘是' 3.下图后,选择创建和配置数 ...

  7. Linux下Weblogic 11g R1安装和配置

    自己留着好好看看! 文章摘自 :http://blog.163.com/ng_0125@126/blog/static/170162360201311773235995/ 1.  安装前 1  确定w ...

  8. Linux下oracle 11g安装

    服务器环境要求     硬盘 20G以上 ,必须高于1G的物理内存,交换空间一般为内存的2倍,例如:1G的内存可以设置swap 分区为3G大小   在Root用户下执行以下步骤: 修改用户的SHELL ...

  9. linux环境下oracle 11g 静默安装

    安装环境 Linux服务器:oracle linux 6.6 64位 Oracle服务器:Oracle11gR2 64位 系统要求 1.Linux安装Oracle系统要求 系统要求 说明 内存 必须高 ...

随机推荐

  1. 百度前端技术学院-基础-day7.8

    任务:参考如下设计稿实现HTML页面及CSS样式 代码 点击预览 HTML 1 <!DOCTYPE html> 2 <html lang="en"> 3 & ...

  2. 总括订单Blanket order

    总括订单Blanket order是客户向其供应方发出的采购订单,但其中包含一段时间内的多个交货日期,通常使用谈判时的预定价格.大多数情况下,它用于对消耗性商品有经常性需求的情况.总括订单通常用于客户 ...

  3. 排序算法-Java实现快速排序算法

  4. mysql 迁移数据库到 oracle (sql注意问题)

    http://ykdn2010.iteye.com/blog/1511349 一. 项目已用到 oracle 函数的转换 1.  Oracle 中的 TO_DATE (),TO_CHAR () 示例: ...

  5. Jmeter(2)基础知识

    一.Jmeter测试计划 1.测试计划用来描述一个性能/接口测试的脚本和场景设计 独立运行每个线程组:用于控制测试计划中的多个线程组的执行顺序.不勾选时,默认各线程组并行.随机执行. 主线程结束后运行 ...

  6. sql 语句使用和转换json数据

    1 连接mysql import pymysql import concurrent coon=pymysql.connect(host='localhost',user='root',passwor ...

  7. Python定时任务利器—Apscheduler

    导语 在工作场景遇到了这么一个场景,就是需要定期去执行一个缓存接口,用于同步设备配置.首先想到的就是Linux上的crontab,可以定期,或者间隔一段时间去执行任务.但是如果你想要把这个定时任务作为 ...

  8. 【JAVA基础&Python】静态/非静态代码块

    /* * * static静态代码块: * 调用静态属性的时候 对应类里面的静态代码块就会被直接执行 * 注意: 只会执行一次,只能调用类内静态结构的(方法/属性) * 作用: 初始化类的属性 * * ...

  9. MongoDB加索引DB崩溃的问题

    项目原因,最近在对MongoDB进行数据存储优化   原有问题: 日志数据量比较大,存到一张表,需要手工定时删除数据,且删除数据时间按天算 数据会定时打包到HDFS,查询时间很慢,需要优化 机器内存占 ...

  10. 记一次 HBase Master is initializing 问题处理

    问题 hbase shell中建立建表出错 分析 org.apache.hadoop.hbase.PleaseHoldException: Master is initializing代表Master ...