您的位置:首页 > 数据库 > Oracle

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

2011-03-10 20:37 906 查看
一、安装 Oracle XE (版本号:10.2.0.1.0

安装过程很 easy,设定好安装路径(我安装在 E:/oraclexe)和 SYS 密码,然后跟着安装向导一步步走就可以了。安装完成后通过 http://127.0.0.1:8080/ 能进入数据库主页即表示安装成功。

二、修改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

即可完成字符集的转换,
SQL> select lengthb('田') from dual;
LENGTHB('田')
-------------
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

6、安装完成后通过 http://127.0.0.1:8080/apex/apex_admin 能进入 APEX 管理后台,即表示安装成功。

三、安装中文语言包

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
等待安装完成后,重新进入 http://127.0.0.1:8080/apex/apex_admin 即可以在界面下方的“English”和“中文(简体)”之间进行语言切换了。

额外补充:

解决不能通过网络及主机名访问 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'
最后再给大家发布一个数据库开发的批处理方法《Oracle 批处理启动关闭服务》详见我的博客:http://blog.csdn.net/xzknet/archive/2009/11/14/4810126.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐