You are on page 1of 6


















p 


c
c
c
c

9  
   




p  
   p  

 
 



  
Realizar a migrao dos SQL Profiles entre bancos de dados diferentes.


Quando houver migrao de servidor, atravs do export e import, visto os sqls profiles
no so transportados

Este documento tem o objetivo demonstrar os passos para a migrao dos SQL Profiles entre bancos
de dados diferentes, podendo estar no mesmo servidor ou no.
G  
Para usar SQL Profiles devem-se ter os privilgios de sistema CREATE ANY
SQL_PROFILE, DROP ANY SQL_PROFILE e ALTER ANY SQL_PROFILE.


 
 p 

  



 


 p 

SQL> exec DBMS_SQLTUNE.CREATE_STGTAB_SQLPROF


(table_name=>'SQLPROFILES',schema_name=>'SCOTT');
PL/SQL procedure successfully completed.
table_name => nome da tabela que ser criada para a guardar os dados dos SQL Profiles
schema_name => nome do esquema onde ser criada a tabela

SQL> desc sqlprofiles


Name Null? Type
----------------------------------------------------------------- -------- -------------------------------------------PROFILE_NAME VARCHAR2(30)
CATEGORY VARCHAR2(30)
SIGNATURE NUMBER
SQL_TEXT CLOB
DESCRIPTION VARCHAR2(500)
TYPE VARCHAR2(9)
STATUS VARCHAR2(8)
BOOLEAN_FLAGS NUMBER
ATTRIBUTES SQLPROF_ATTR
VERSION NUMBER
SPARE1 CLOB
SPARE2 BLOB




 


p 






SQL> EXEC DBMS_SQLTUNE.PACK_STGTAB_SQLPROF (staging_table_name =>
'SQLPROFILES',profile_name=>'my_sql_profile');
PL/SQL procedure successfully completed.
staging_table_name => nome da tabela criada anteriormente para armazenar os SQL Profiles.
profile_name => nome do SQL Profile a ser empacotado.
-2-

>

  !

"# 
$
  !  p  




%% & 
       p 


SELECT 'EXEC DBMS_SQLTUNE.PACK_STGTAB_SQLPROF (staging_table_name =>'
||
'''SQL_PROFILES'''
||
',profile_name=>'''
||
NAME
||
''');'
FROM DBA_SQL_PROFILES;



> 
  p 
    

SQL> set autot on
SQL> select /*+ no_index(emp pk_emp) */ * from emp where empno=7839;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- ---------7839 KING PRESIDENT 17-NOV-81 5000 10
Execution Plan
---------------------------------------------------------Plan hash value: 2949544139
-------------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
-------------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | 1 | 31 | 1 (0)| 00:00:01 |
| 1 | TABLE ACCESS BY INDEX ROWID| EMP | 1 | 31 | 1 (0)| 00:00:01 |
|* 2 | INDEX UNIQUE SCAN | PK_EMP | 1 | | 0 (0)| 00:00:01 |
-------------------------------------------------------------------------------------Predicate Information (identified by operation id):
--------------------------------------------------2 - access("EMPNO"=7839)
Nota
----- SQL profile "my_sql_profile" foi usado para esta consulta.



' (" 






-3-

[oracle@localhost oracle]$ exp scott/tiger tables=sqlprofiles


Export: Release 10.2.0.3.0 - Production on Fri Sep 7 01:18:06 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning and Data Mining options
Export done in US7ASCII character set and AL16UTF16 NCHAR character set
About to export specified tables via Conventional Path ...
. . exporting table SQLPROFILES 1 rows exported
Export terminated successfully without warnings.


) (" 

 
 
*


  
 p 

SQL> select /*+ no_index(emp pk_emp) */ * from emp where empno=7839;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- ---------7839 KING PRESIDENT 17-NOV-81 5000 10
Execution Plan
---------------------------------------------------------Plan hash value: 3956160932
-------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
-------------------------------------------------------------------------| 0 | SELECT STATEMENT | | 4 | 348 | 3 (0)| 00:00:01 |
|* 1 | TABLE ACCESS FULL| EMP | 4 | 348 | 3 (0)| 00:00:01 |
-------------------------------------------------------------------------Predicate Information (identified by operation id):
--------------------------------------------------1 - filter("EMPNO"=7839)
Nota: Os SQL Profiles ainda no foram importados. 


+ G  






[oracle@localhost oracle]$ imp scott/tiger file=expdat.dmp full=y
Import: Release 10.2.0.3.0 - Production on Fri Sep 7 01:24:15 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
-4-

With the Partitioning and Data Mining options


Export file created by EXPORT:V10.02.01 via conventional path
import done in US7ASCII character set and AL16UTF16 NCHAR character set
. importing SCOTT's objects into SCOTT
. importing SCOTT's objects into SCOTT
. . importing table "SQLPROFILES" 1 rows imported
Import terminated successfully without warnings.



, - 

p *
 


SQL> conn scott/tiger
SQL> EXEC DBMS_SQLTUNE.UNPACK_STGTAB_SQLPROF(replace =>
TRUE,staging_table_name => 'SQLPROFILES');
PL/SQL procedure successfully completed.

. /

  
 p 

SQL> select /*+ no_index(emp pk_emp) */ * from emp where empno=7839;


EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- ---------7839 KING PRESIDENT 17-NOV-81 5000 10
Execution Plan
---------------------------------------------------------Plan hash value: 2949544139
-------------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
-------------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | 1 | 31 | 1 (0)| 00:00:01 |
| 1 | TABLE ACCESS BY INDEX ROWID| EMP | 1 | 31 | 1 (0)| 00:00:01 |
|* 2 | INDEX UNIQUE SCAN | PK_EMP | 1 | | 0 (0)| 00:00:01 |
-------------------------------------------------------------------------------------Predicate Information (identified by operation id):
--------------------------------------------------2 - access("EMPNO"=7839)
Note
----- SQL profile "my_sql_profile" foi usado para esta consulta.
-5-


c

-6-

You might also like