分类目录归档:oracle

OCA证书

很惊奇会先下来OCA的证书,突然收到ORACLE发来的一封邮件,说让我下载OCA证书。但我的目标是OCP,所以目前还不清楚这张证书是否需要申请他们发送过来,我彩打了一下,跟真的证书差不多,然后再这里保存个备份吧
文件名:oca证书.pdf, 访问地址:http://www.kuaipan.cn/file/id_27168653149473662.htm

CodeIgniter初始化需要调整的文件

使用CI开发时,需要对原来的框架配置文件做少量调整,以便我们使用。由于开发时间过长,现在只能从svn调整的记录里面来找到这些东西,可能有些地方一时记不起来为什么要调整了,记录下来下次初始化时好用

1、autoload.php,加载我们需要的选项,共有两个需要调整的地方

image

2、config.php两个地方,上面用来固定路径,后面用来加密

image

image

 

3、database.php,根据自己的数据库配置情况来调整

image

ORACLE配置示例:

// oracle
$db['default']['hostname'] = '(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST =host.name.or.ip)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = service.name)))';
$db['default']['username'] = 'username';
$db['default']['password'] = '111111';
$db['default']['database'] = '';
$db['default']['dbdriver'] = 'oci8';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;

4、routes.php将默认的首页进行调整(可选,一般不建议调整成index)

image

另外,如果是配置oracle数据库,请将system\database\drivers\oci8\oci8_result.php文件修改一下,不然会报警告

image

5、子目录配置htaccess方案

<IfModule mod_rewrite.c>
    RewriteEngine on RewriteBase /sppt/ RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ ./index.php/$1 [L]
</IfModule>

6、在每个controller前加上这段代码

function __construct(){
    parent::__construct();
}

7、开启apache的rewrite模块

#LoadModule rewrite_module modules/mod_rewrite.so

Oracle学习

 

oracle university接触oracle已经好长时间了,始终没有系统的学习过,只局限于在工作中写一些开发代码,建一些存储过程而已。这次有机会去Oracle University培训还得益于有一们同事的离职,不然怕也到不了我。学习的过程是紧张而有序的,整个过程正好适当,这个适当的含义是它既不太容易,容易到自己一看就会,不屑于去学习;也不太难,难到完全听不懂;恰到好处的一个点会更容易激发人的积极性。12月5号到16号,共去了两周。分为两个老师上课,第一个叫童廉进,第二个叫唐涛;两个各有特点,童是一个比较老实的人,他会想把所有知道的东西都告诉你,然后下课让你认认真真的做QUIZ,实验也会安排你去做。但他却不太善于把握时间,总是该下课的时候才讲了一半,一看时间来不及了,只好压缩我们的实验时间,其实他也是太想把知道的内容灌输给我们了,但结果是我们在一堂课下来能够吸收的更少罢了;而唐是另外的一种人,他总是把教材上的东西一提而过,取代的是自己新手实践;实践完毕后直接告诉你,教材上就是刚才他所实践的东西。进度飞快,每堂课基本上不超过半小时。这样的好处是,我们有更多自由的时间吸收他上课讲的那些精华的东西,也有时间休息一下我们的大脑来接收下一堂课要学的内容;些触发器罢了;在万达的时候,每隔一段时间就会有数据库培训的相关内容,但时间毕竟太短——少的时候半天,多的时候才一天。

从课程上来说,oracle的使用并不复杂,但为什么课程却设置了这么多奇奇怪怪的东西呢?第一门课是理论知道,这一部分还是有必要的,可以供你了解oracle的内部结构,第二门课主要讲述了一些高级应用,但在我看来,高级应用主要是讲数据的备份与恢复,无论从哪个层面上的备份(表空间,或者数据库),最主要的目的是怎么样使你的数据库高效安全的运行,如何处理大批量的数据;他给我们讲的一个经典是,背景:一个数据库有全库备份,然后把控制文件,日志文件,数据文件等都删掉了,怎么样从那个全库备份中恢复过来;可能你会想,这个很容易啊,你已经做了全库备份了,怎么会不能恢复过来呢?但问题是如果你知道oracle有时间点限制怕你就不再这么乐观了;数据库的恢复分为完全恢复和不完全恢复,这种情况下,就只能进行不完全恢复。但不完全恢复也有一个一致点的概念,就是日志文件头跟数据文件头跟控制文件头要一致,数据库才会启动,这三样缺一不可,这样的话,即使你把原来的全库备份拿过来了,也不一定能够找到这样一个一致点进行恢复,而不能恢复造成的结果很可能就是整个数据库不能再启动了。这个是他说的最麻烦的一个事例,但后面想一想也没那么的复杂,即使整个数据库都启不来了,我还可以把备份文件导出到一个新建的数据库中,这样也可以恢复到一个时间点;

这次的学习还第一次让我接触到了RMAN,让我意识到,英文上课是多么痛苦的一件事情。但上课的时光也是很开心的,可以接触到不一样的人,不一样的环境,思考更多不一样的事情。比如我们见到的一个台湾人,就跟我们讲了一些台湾与大陆生活习惯上的差别,在我们紧张学习中增添了乐趣【完】