Linux下安装Oracle Database 11g Express Edition

前言:

Oracle Database 11g 快捷版 (Oracle Database XE) 是一款基于 Oracle Database 11g 第 2 版代码库的小型入门级数据库,它具备以下优点:免费开发、部署和分发;下载速度快;并且管理简单。

相较于oracle database 标准版与企业版动则2、3G的大小。XE版总共才三百多兆,它定位的是免费入门级数据库,最适合初学者进行oracle数据库的学习。

目前最新版本为Oracle Database XE 11g,只提供32位window和64位Linux的下载。

下载官网:http://www.oracle.com/technetwork/cn/database/database-technologies/express-edition/downloads/index.html

1.在Linux中增加swap空间 

将下载后的oracle压缩包解压到Linux系统下,利用root用户权限指令操作:

[root@localhost Disk1]# rpm -i oracle-xe-11.2.0-1.0.x86_64.rpm

会有以下提示:

This system does not meet the minimum requirements for swap space.  Based on
the amount of physical memory available on the system, Oracle Database 11g
Express Edition requires 2048 MB of swap space. This system has 2042 MB
of swap space.  Configure more swap space on the system and retry the 
installation.

错误:%pre(oracle-xe-11.2.0-1.0.x86_64) 脚本执行失败,退出状态码为 1
错误:oracle-xe-11.2.0-1.0.x86_64: 安裝 已失败

 

这是由于在安装Linux的时候,不知道swap空间分配多少比较好,所以会随便分配一个,而安装Oracle11g会要求很大的swap空间,所以swap空间不够用,所以需要增加swap空间大小。

        以下的操作都要在root用户下进行,首先先建立一个分区,采用dd命令比如

dd if=/dev/zero of=/home/swap bs=1024 count=512000

这样就会创建/home/swap这么一个分区文件。文件的大小是512000个block,一般情况下1个block为1K,所以这里空间是512M。接着再把这个分区变成swap分区。

/sbin/mkswap /home/swap

再接着使用这个swap分区。使其成为有效状态。

/sbin/swapon /home/swap

现在再用free -m命令查看一下内存和swap分区大小,就发现增加了512M的空间了。不过当计算机重启了以后,发现swap还是原来那么大,新的swap没有自动启动,还要手动启动。那我们需要修改/etc/fstab文件,增加如下一行

/home/swap              swap                    swap    defaults        0 0

你就会发现你的机器自动启动以后swap空间也增大了。

2.组的创建

(1)先查看这些组和用户是否存在:

  # grep oinstall /etc/group

  # grep dba /etc/group

  (2)创建安装oracle 所需的组和用户

  # groupadd osintall

  # groupadd dba

# useradd –m –g oinstall –G dba oracle

检查一下oracle 是否属于组 oinstall 和 dba (#id oracle) :

# id oracle

uid=1001(oracle) gid=1000(oinstall) groups=1001(dba)

再给oracle 设置一个用户口令

# passwd oracle 输入两次密码。

3.oracle安装

再次输入指令:

[root@localhost Disk1]# rpm -i oracle-xe-11.2.0-1.0.x86_64.rpm

输出:

Executing post-install steps...
You must run '/etc/init.d/oracle-xe configure' as the root user to configure the database.

按所给提示输入:

[root@localhost Disk1]# /etc/init.d/oracle-xe configure

根据提示设置8080、1521端口,还有sys和system的密码,开机是否启动等。

最后输出:

Starting Oracle Net Listener...Done
Configuring database...Done
Starting Oracle Database 11g Express Edition instance...Done
Installation completed successfully.

说明安装成功。

 

然后以super user身份运行以下脚本进行配置:

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

4.设置环境变量

修改/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


注意:以下几点:

XE版本里只能有一个instance, 我将SID修改了以后貌似会报错,所以SID就不用修改了。

BASE和HOME两个变量后尽量不要加斜线 '/' ,有可能会报错,虽然不知到为什么... 同时,TNS_ADMIN这个变量一定要有。

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

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

5.初始化数据库

# su Oracle

如果不知道密码 可以用 # passwd oracle重新设置

修改init.ora:

cd  /u01/app/oracle/product/11.2.0/xe/dbs/

cp init.ora initXE.ora

vi initXE.ora

将该文件修改成如下内容:

db_name='XE'
memory_target=1G
processes = 150
audit_file_dest='/u01/app/oracle/admin/orcl/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='/u01/app/oracle/fast_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='/u01/app/oracle'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
# You may want to ensure that control files are created on separate physical
# devices
control_files = ('/u01/app/oracle/oradata/', '/u01/app/oracle/oradata/')
compatible ='11.2.0'


切换到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;

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

6.oracle启动关闭简单步骤

a.启动监听与数据库

# su oracle
bash-4.1$ lsnrctl start

b.启动数据库:
su oracle
bash-4.1$ sqlplus /nolog

以sysdba登陆,并执行命令startup 
SQL> conn /as sysdba
Connected to an idle instance.
SQL> startup    

c.关闭数据库 

SQL> shutdown immediate

d.退出sqlplus

SQL> exit

bash-4.1$ lsnrctl stop   // oracle用户下执行

7.其它

web界面:http://127.0.0.1:8080/apex

手工启动和关闭Oracle XE的命令是

/etc/init.d/oracle-xe start

/etc/init.d/oracle-xe stop

注:在Linux的应用程序菜单中有oracle的一些选项,可进行图形化的操作


本文转自http://www.th7.cn/system/lin/201412/78603.shtml

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30785809/viewspace-1994169/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/30785809/viewspace-1994169/

来源:网络


智能推荐

关于oracle database 11g的下载安装

之前自己开发学校的作业也全部用的是mysql,鉴于这次学校有个oracle database 11g 的课程和身边的同学一直安装不好oracle database,那么我就写下博客和各位一起探索一下oracle database 11g吧。 1.下载 oracle database 11 g;    http...

Oracle Database 11g 下载安装过程

下载链接:https://www.oracle.com/database/technologies/oracle-database-software-downloads.html 滚动到这 选择合适的自己的系统。 我的是Windows10. 两个都要下载,因为文件太大,分了两个文件。 下载好之后解压。 先解压win64_11gR2_database_1of2,再解压win64_11gR2_data...

Linux下安装Oracle Database 11g R2准备工作及oracle简介

**## Oracle简介 Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。 优点: 1、可用性强...

Oracle 11g 新特性 -- Database Replay (重演) 说明

  一.理论知识说明   官方文档的说明: Introduction to Database Replay http://docs.oracle.com/cd/E11882_01/server.112/e16540/dbr_intro.htm#RATUG104     --这部分内容摘自11g OCP 教材。 1.1 为什么使用数据库重演 大型业务关键应用程...

Windows系统下安装Oracle Database 11g Release 2过程

一、下载Oracle: 官网:https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html 二、勾选Accept,找到你要下载的版本 勾选Accept   这里以11g为例   三、下载完成后解压两个压缩包,打开文件 点击setup.exe开始安装 四、弹出以下窗口,等待 ...

猜你喜欢

HANA Express edition下载以及安装

HANA Express edition是SAP官方推出的可以联系HANA的小型内存数据库软件;可以帮助使用者在自己的本机上熟悉HANA数据库。只需要8G-16G内存即可。 官方地址:https://www.sap.com/cmp/td/sap-hana-express-edition.html 进入页面点击: 如果没有账号的话,需要通过邮件进行注册 有账号的话直接登录即可 登录后会看到如下界面 ...

install a local python package(to be exactly, a project--a folder with all these .py files)

the procedure recorded not for public reference.   In Anaconda Prompt,  change directory to  then change the input to  Note that drama should include setup.py in its...

MVC与MVVM简单介绍

MVC ( model view controller)即数据存储、用户界面、业务逻辑。此框架可以对服务器渲染后的数据进行操作或是修改。说白了,就是所有的通信都是单向的。其工作原理为: view 传送指令到controller,controller完成业务逻辑后要求model设置状态,model将新的数据发送到view。 其缺点为: 它必须等待服务器端的指示。如果为异步模式,所有节点、数据、页面结...

如何搭建一个指标体系

转载自: http://www.itongji.cn/detail?type=99992164 https://www.zhihu.com/question/396456056 第二个链接还有各个行业的指标体系构建 一.什么是指标体系 “指标体系”这个概念是应用比较广泛的,我们从正式出版物中摘取一个定义: 指标体系,即统计指标体系,是由一系列具有相互联系的指标所组成的整体,...

线性代数--行列式1

文章目录 行列式概念 1. n×nn×nn×n行列式 2. 几何意义 2×22×22×2:平行四边形**面积** 3×33×33×3:六面体**体积** 3. 计算-展开定理 余子式与代数余子式 展开定理 4. 七大性质 5. 几个重要的行列式 行列式概念 1. n×nn&tim...

问答精选

Getting stuck on a While Loop using BufferedReader

I've been having a problem with using a while loop surrounding a BufferedReader in Java. I'm doing some experiments with Sockets. My current code: But no matter what I've tried the code will not progr...

AWS CodeBuild Default Environment Variables

I'm having an issue while logging into ECR. buildspec.yml Following command return me "us-east-2" and "" ($AWS_ACCOUNT_ID is empty) so that's why I'm unable to login to ECR. Becaus...

Receive RESTFUL request without Content-Type header

I am practicing spring boot and meet a problem. I have a restful API to receive requests from other 3rd parties. May I know is it possible to receive the request without a Content-Type header. I keep ...

A trigger to prevent deletion upon condition in MySQL

Have a table with this schema Performers (PerformerID, PerformerName, Street, City, State, Zip, ActivityID) I need to define a trigger to prevent deletion if the ActivityID of the deletion is unique f...

C++ Google Protocol Buffers: assign binary stream to protobuf object

I have the following protoc file: And I have the following C++ function: The string "data" was created using: My question is: how do I convert a string to a protoc object so I can access the...

相关问题

相关文章

热门文章

推荐文章

相关标签

推荐问答