WEB开发网
开发学院数据库Oracle Oracle数据库11g新特性:数据库重放 阅读

Oracle数据库11g新特性:数据库重放

 2008-12-16 13:03:01 来源:WEB开发网   
核心提示: 在我看来,单为了使用该工具,Oracle数据库11g新特性:数据库重放(3),也值得升级到 Oracle 数据库 11g.下面将介绍该工具的工作原理,捕获1. 第一个任务是捕获数据库中的负载,000 个不同的插入语句,而不是在同样的语句或程序中执行 1,所有任务都可通过命令行或 Oracl

在我看来,单为了使用该工具,也值得升级到 Oracle 数据库 11g.下面将介绍该工具的工作原理。

捕获

1. 第一个任务是捕获数据库中的负载。所有任务都可通过命令行或 Oracle 企业管理器数据库控制完成,但此处将使用后者。

捕获到的负载存储在系统中的文件上,这些文件是名副其实的“摄像机”内的“磁带”。该目录应当为空。因此,第一个任务是创建目录(如果还没有此目录)。对于本例,创建的目录名为 /home/oracle/dbcapture.

 $ cd /home/oracle
 $ mkdir dbcapture

2. 在数据库中为该目录创建一个目录对象:

SQL> create directory dbcapture as '/home/oracle/dbcapture';

目录创建完成。

3. 现在,可以开始捕获了。为了演示真实场景,将创建一个简单的测试工具,该工具将生成许多 INSERT 语句并插入到一个名为 TRANS 的表中。

下面是一个可完成此任务的小的 PL/SQL 代码片断。该代码片断将生成 1,000 个插入语句并进行执行。(注意,此代码片段将生成 1,000 个不同的插入语句,而不是在同样的语句或程序中执行 1,000 次插入操作。)

declare
 l_stmt varchar2(2000);
begin
 for ctr in 1..1000 loop
   l_stmt := 'insert into trans values ('||
    trans_id_seq.nextval||','||
    ''''||dbms_random.string('U',20)||''','||
    'sysdate - '||
    round(dbms_random.value(1,365))||','||
    round(dbms_random.value(1,99999999),2)||','||
    round(dbms_random.value(1,99))||')';
   dbms_output.put_line(l_stmt);
   execute immediate l_stmt;
   commit;
 end loop;
end;

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Oracle 数据库 特性

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接