天天看点

跟我学习改造OracleXE为具有真正意义开发使用的数据库

一、安装 oracle xe (版本号:10.2.0.1.0)

二、修改oracle xe的字符集

--问题:在字符集al32utf8中,一个汉字占用3个字符

sql> select lengthb('田') from dual;

lengthb('田')

-------------

            3

如果不修改字符集,那你就痛苦吧,不过还好,我这里有个方法还是蛮简单的。

过程也相当简单,首先启动命令行(开始-》运行-》cmd)。然后执行下面的命令。

1.)命令行窗口下运行:sqlplus.exe /nolog

2.)然后再sqlplus里面执行如下命令

connect sys_name/sys_password as sysdba

shutdown immediate;  

startup mount  

alter system enable restricted session;  

alter system set job_queue_processes=0;  

alter system set aq_tm_processes=0;  

alter database open;

alter database character set internal_use zhs16gbk;  

shutdown immediate 

startup

即可完成字符集的转换,

            2

当然这时你的apex也就同时变成了乱码,解决办法有3个:

·         一个是不用apex(/(^o^)/~);

·         一个是把ie的的语言设置为英文(或者http://127.0.0.1:8080/apex/apex_admin 即可以在界面下方的“english”和“中文(简体)”之间进行语言切换了)

·         最后一个就是升级apex,并安装中文包(推荐)下面将对这种方法做介绍,仔细听好了啊;)

三、安装 apex 4.0.2

1、将 apex_4.0.2.zip 中的 apex 文件夹解包到 e:/oraclexe/ 下;

2、打开 cmd 控制台窗口,切换当前路径到 e:/oraclexe/apex/ 下,启动 sql*plus,以 sysdba 角色登录数据库:

e:/oraclexe/apex>sqlplus /nolog

sql> connect sys as sysdba

enter password: <sys密码>

3、执行安装脚本 apexins.sql:

sql>@apexins sysaux sysaux temp /i/

4、安装完成后,执行 apxldimg.asl 脚本安装 apex 中需要用到的图片、css 和 js 脚本:

sql>@apxldimg e:/oraclexe/

这里需要注意的是:传递给 apxldimg.sql 脚本的参数是 apex 主目录的父目录(例如:你的 apex 安装路径是 e:/oraclexe/apex,那么这里路径参数就是 e:/oraclexe),这一点可以通过查看 apxldimg.sql 脚本得到验证,这也是网上很多人说安装图片时出现路径错误的原因所在。

5、下面执行 apxchpwd.sql 脚本并根据提示设定 apex 的 admin 密码:

sql>@apxchpwd  

三、安装中文语言包

1、打开 cmd 控制台窗口设置环境变量  nls_lang:

set nls_lang=american_america.al32utf8

注意:如果前面有打开过 sql*plus 窗口,一定记得要先关闭它再设置环境变量 nls_lang。

2、切换到 e:/apex_4.0.2/apex/builder/zh-cn 路径下,启动 sql*plus 并以 sysdba 角色执行下列语句:

sql>alter session set current_schema = apex_040000;

sql>@load_zh-cn.sql

额外补充:

解决不能通过网络及主机名访问 apex 的问题:启动 sql*plus 并以 sysdba 角色登录数据库,执行下列语句:

sql>execute dbms_xdb.setlistenerlocalaccess(l_access => false);

四、设置后台运行参数

alter system set job_queue_processes=2;

 注释:job_queue_processes=0的话,之后的job没有job调度进程,是不会run的。

五、开始你的数据库之旅吧

(下面的内容是xe不提供的,需要你写代码执行,所以还请仔细看好啊)

1.)创建用户表空间

/*创建用户*/

create user portal identified by portal;

grant connect,resource,dba,create view to portal;

/*创建表空间*/

create tablespace datatb

datafile 'e:/oraclexe/oradata/xe/datatb.dbf' size 1024m

autoextend on next 40m maxsize unlimited

extent management local uniform size 4 m;

/*表空间配额*/

alter user portal quota unlimited on datatb;

/*设置用户默认表空间*/

alter user portal default tablespace datatb;

2.)导入数据库备份文件

imp portal/portal@xe  fromuser=portal touser=portal file=data.dmp

3.)收回dba权限

revoke dba from portal;

4.)注释:这里顺便把备份其他数据库的脚步也讲讲;

set tmpdir=.

mkdir "%date%"

exp user/user_password@ora_192.168.0.2 owner=(user) file='%tmpdir%/%date%/data.dmp'  compress=y  log='%tmpdir%/%date%/exp.log'