Pesquisar este blog

Carregando...

segunda-feira, 6 de abril de 2015

remover o banco de dados via DBCA - Countdown to OCM

Para remover o banco de dados PROD1 via linha de comando com dbca, faca o comando abaixo:


-bash-3.2$ dbca -silent -deleteDatabase -sourceDB PROD1 

Estabelecendo conexão com o banco de dados

4% concluído

 9% concluído

14% concluído

19% concluído

23% concluído

28% concluído

47% concluído

Atualizando arquivos de configuração de rede

48% concluído

52% concluído

Deletando instância e arquivos de dados

76% concluído

100% concluído


Verifique o arquivo de log "/u01/app/oracle/cfgtoollogs/dbca/PROD10.log" para obter mais detalhes.

Clique aqui para continuar lendo este post...

Criando o banco de dados Oracle via linha de comando - Countdown to OCM

Iremos criar um banco de dados Oracle a partir da linha de comando, sem uso de ferramentas.

Para isso, faremos a divisão das etapas em passos mostrados abaixo:
1) Alterar o /etc/oratab adicionando seu novo banco -bash-3.2$ 

-bash-3.2$ cat /etc/oratab

#
# This file is used by ORACLE utilities.  It is created by root.sh
# and updated by either Database Configuration Assistant while creating
# a database or ASM Configuration Assistant while creating ASM instance.

# A colon, ':', is used as the field terminator.  A new line terminates
# the entry.  Lines beginning with a pound sign, '#', are comments.
#
# Entries are of the form:
#   $ORACLE_SID:$ORACLE_HOME:<N|Y>:
#
# The first and second fields are the system identifier and home
# directory of the database respectively.  The third filed indicates
# to the dbstart utility that the database should , "Y", or should not,
# "N", be brought up at system boot time.
#
# Multiple entries with the same $ORACLE_SID are not allowed.
#
#
+ASM:/u01/app/oracle/product/11.2.0/grid:N
*:/u01/app/oracle/agent11g:N
PROD1:/u01/app/oracle/product/11.2.0/dbhome_1:N # adicionado 

 2) Criar os apelidos para os devidos locais, isso facilita a administracao. Arquivo alias.sh
alias tns='cd $ORACLE_HOME/network/admin'
alias dbs='cd $ORACLE_HOME/dbs'
alias startup='echo startup | sqlplus "/ as sysdba"'
alias abort='echo shutdown abort | sqlplus "/ as sysdba"'
alias mount='echo startup mount| echo shutdown abort | sqlplus "/ as sysdba"'
alias rman='rman target /'
alias rmana='rman target / auxiliary sys/oracle_4U@aux'
alias rdbms='cd $ORACLE_HOME/rdbms/admin'

depois de criado, faca a carga do arquivo

source alias.sh


 3) Criar o arquivo de senha 

-bash-3.2$ dbs
-bash-3.2$ pwd
/u01/app/oracle/product/11.2.0/dbhome_1/dbs
-bash-3.2$ orapwd file=orapwPROD1 password=oracle

 4) Criar o arquivo de inicializacao, parameter file  

vi initPROD1.ora

db_name=PROD1
db_create_file_dest='/u01/app/oracle/oradata/'
db_create_online_log_dest_1='/u01/app/oracle/oradata/'
db_create_online_log_dest_2='/u02/app/oracle/oradata/'
sga_target=1G
pga_aggregate_target=200M
remote_login_passwordfile='EXCLUSIVE'
control_files='/u01/app/oracle/oradata/PROD1/control01.ctl','/u02/app/oracle/oradata/PROD1/control02.ctl'


 7) Criar as pastas para o controlfile

-bash-3.2$ mkdir -p /u01/app/oracle/oradata/PROD1/
-bash-3.2$ mkdir -p /u02/app/oracle/oradata/PROD1/

 6) Inicializar a instancia, e criar o arquivo spfile 

-bash-3.2$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Mon Apr 6 21:45:22 2015

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area 1071333376 bytes
Fixed Size     1349732 bytes
Variable Size   281020316 bytes
Database Buffers   784334848 bytes
Redo Buffers     4628480 bytes
ORA-00205: error in identifying control file, check alert log for more info


SQL> create spfile from pfile;

File created.

SQL> shutdown abort
ORACLE instance shut down.
      
SQL> 
SQL> 
SQL> startup
ORACLE instance started.

Total System Global Area 1071333376 bytes
Fixed Size     1349732 bytes
Variable Size   281020316 bytes
Database Buffers   784334848 bytes
Redo Buffers     4628480 bytes
ORA-00205: error in identifying control file, check alert log for more info


SQL> 

 7) Colocar a sintaxe da criacao de banco em um arquivo buscar na documentacao e subsittuir somente o nome do banco e as senhas. Arquivo db.sql

CREATE DATABASE PROD1
     USER SYS IDENTIFIED BY oracle
     USER SYSTEM IDENTIFIED BY oracle
     EXTENT MANAGEMENT LOCAL
     UNDO TABLESPACE undotbs
     DEFAULT TEMPORARY TABLESPACE tempts1
     DEFAULT TABLESPACE users;



 8) Criar o banco de dados 

-bash-3.2$ sqlplus / as sysdba @db.sql

SQL*Plus: Release 11.2.0.3.0 Production on Mon Apr 6 21:53:30 2015

Copyright (c) 1982, 2011, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options


Database created.


 9) Instalar o dicionario de dados 

rdbms
SQL> @catalog.sql
SQL> @catproc.sql
SQL>  connect system/oracle 
SQL> @?/sqlplus/admin/pupbld.sql



10) Instalar o enteprise manager database control

SQL> alter user dbsnmp account unlock identified by oracle;


User altered.


-bash-3.2$ emca -config dbcontrol db -repos create

STARTED EMCA em 06/04/2015 22:13:52
Assistente de Configuração do EM, Produção da Versão 11.2.0.3.0
Copyright (c) 2003, 2011, Oracle. Todos os direitos reservados.

Especifique as seguintes informações:
SID do Banco de Dados: PROD1
Número da porta do listener: 1521
ORACLE_HOME do Listener [ /u01/app/oracle/product/11.2.0/grid ]: 
Senha para o usuário SYS:  
Senha do usuário DBSNMP:  
Senha do usuário SYSMAN:  
Endereço de e-mail para notificações (opcional): 
Servidor de Saída de Correio (SMTP) para notificações (opcional): 
-----------------------------------------------------------------

Você especificou as seguintes definições

ORACLE_HOME do banco de dados ................ /u01/app/oracle/product/11.2.0/dbhome_1

Nome do host local ................ srv01
ORACLE_HOME do Listener ................ /u01/app/oracle/product/11.2.0/grid
Número da porta do listener ................ 1521
SID do Banco de Dados ................ PROD1
Endereço de e-mail para notificações ............... 
Servidor de Saída de Correio (SMTP) para notificações ............... 

-----------------------------------------------------------------
Deseja continuar? [sim(Y)/não(N)]: Y
06/04/2015 22:14:06 oracle.sysman.emcp.EMConfig perform
INFO: Esta operação está sendo registrada em /u01/app/oracle/cfgtoollogs/emca/PROD1/emca_2015_04_06_22_13_52.log.
06/04/2015 22:14:06 oracle.sysman.emcp.EMReposConfig createRepository

INFO: Criando o repositório do EM (isso pode demorar um pouco)...
06/04/2015 22:16:29 oracle.sysman.emcp.EMReposConfig invoke
INFO: Repositório criado com sucesso
06/04/2015 22:16:32 oracle.sysman.emcp.EMReposConfig uploadConfigDataToRepository
INFO: Fazendo upload dos dados de configuração para o repositório EM (isso pode demorar um pouco) ...
06/04/2015 22:17:22 oracle.sysman.emcp.EMReposConfig invoke
INFO: Dados de configuração submetidos a upload com sucesso
06/04/2015 22:17:24 oracle.sysman.emcp.util.DBControlUtil secureDBConsole
INFO: Protegendo o Database Control (isso pode demorar um pouco) ...
06/04/2015 22:18:06 oracle.sysman.emcp.util.DBControlUtil secureDBConsole
INFO: Database Control protegido com sucesso.
06/04/2015 22:18:06 oracle.sysman.emcp.util.DBControlUtil startOMS
INFO: Iniciando Database Control (isso pode demorar um pouco)...
06/04/2015 22:18:31 oracle.sysman.emcp.EMDBPostConfig performConfiguration
INFO: Database Control iniciado com sucesso
06/04/2015 22:18:31 oracle.sysman.emcp.EMDBPostConfig performConfiguration
INFO: >>>>>>>>>>> O URL do Database Control é https://srv01:1158/em <<<<<<<<<<<
06/04/2015 22:18:33 oracle.sysman.emcp.EMDBPostConfig invoke
WARNING: 
************************  WARNING  ************************

O Repositório de Gerenciamento está no modo seguro, no qual os dados do Enterprise Manager serão criptografados. A chave de criptografia se encontra no arquivo: /u01/app/oracle/product/11.2.0/dbhome_1/srv01_PROD1/sysman/config/emkey.ora. Certifique-se de que esse arquivo tem backup, pois os dados criptografados não poderão mais ser utilizados se o arquivo se perder. 

***********************************************************
A configuração do Enterprise Manager foi concluída com sucesso

FINISHED EMCA em 06/04/2015 22:18:33




Clique aqui para continuar lendo este post...

Criando um banco atraves do DBCA via linha de comando - Countdown to OCM

Neste documento estarei mostrando como criar um banco de dados via dbca, na linha de comando.
O interessante e que o comando abaixo demora em torno de 10 minutos com o enteprise manager database control ja criado.

Primeiro, va ate o arquivo /etc/oratab e incluia a linha com um nome de um banco, pode ser algum somente de teste ou o que vai ser criado. Rodaremos o . oraenv para configurar as variaveis de ambiente.



-bash-3.2$ cat /etc/oratab


# This file is used by ORACLE utilities.  It is created by root.sh

# and updated by either Database Configuration Assistant while creating
# a database or ASM Configuration Assistant while creating ASM instance.

# A colon, ':', is used as the field terminator.  A new line terminates
# the entry.  Lines beginning with a pound sign, '#', are comments.
#
# Entries are of the form:
#   $ORACLE_SID:$ORACLE_HOME:<N|Y>:
#
# The first and second fields are the system identifier and home
# directory of the database respectively.  The third filed indicates
# to the dbstart utility that the database should , "Y", or should not,
# "N", be brought up at system boot time.
#
# Multiple entries with the same $ORACLE_SID are not allowed.
#
#
+ASM:/u01/app/oracle/product/11.2.0/grid:N

*:/u01/app/oracle/agent11g:N


dbca -silent > criadb.sh

Conteudo do Arquivo criadb.sh

dbca  -silent \
        -createDatabase \
                -templateName General_Purpose.dbc \
                -gdbName PROD1 \
                -sysPassword oracle \
                -systemPassword oracle \
                -emConfiguration LOCAL \
                        -dbsnmpPassword oracle \
                        -sysmanPassword oracle \
                -datafileDestination '/u01/app/oracle/oradata' \
                -recoveryAreaDestination '/u01/app/oracle/fast' \
                -storageType FS \
                -characterSet AL32UTF8 \
                -sampleSchema true

Removendo algumas linhas e fazendo ajustes o arquivo ficara pronto.

Dai o proximo passo executa-lo:

sh criadb.sh


-bash-3.2$ sh criadb.sh 
Falha ao limpar as etapas
5% concluído
Copiando arquivos de banco de dados
7% concluído
8% concluído
38% concluído
Criando e iniciando a instância Oracle
39% concluído
41% concluído
45% concluído
46% concluído
50% concluído
54% concluído
55% concluído
56% concluído
59% concluído
61% concluído
Registrando o banco de dados no Oracle Restart
66% concluído
Concluindo Criação de Banco de Dados
70% concluído
73% concluído
76% concluído
86% concluído
96% concluído
100% concluído

Verifique o arquivo de log "/u01/app/oracle/cfgtoollogs/dbca/PROD1/PROD10.log" para obter mais detalhes.


-bash-3.2$ . oraenv
ORACLE_SID = [PROD1] ? PROD1
The Oracle base remains unchanged with value /u01/app/oracle
-bash-3.2$ emctl status dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.3.0 
Copyright (c) 1996, 2011 Oracle Corporation.  All rights reserved.
https://srv01:1158/em/console/aboutApplication

Oracle Enterprise Manager 11g is not running.


Dessa forma seu banco ja esta criado com o modelo e exemplos de esquema, de forma com que voce nao gastou 10 minutos para completar a operacao.

Clique aqui para continuar lendo este post...

segunda-feira, 30 de março de 2015

Verificar as recomendacoes do SEGMENT ADVISOR sem entrar no EM

Com a consulta abaixo conseguimos ter acesso as recomendacoes do Segment advisor.

SELECT 
                   'Segment Advice --------------------------'|| chr(10) || 
                   'TABLESPACE_NAME           : ' || tablespace_name              || chr(10) || 
                   'SEGMENT_OWNER             : ' || segment_owner                || chr(10) || 
                   'SEGMENT_NAME              : ' || segment_name                 || chr(10) || 
                   'ALLOCATED_SPACE           : ' || allocated_space              || chr(10) || 
                   'RECLAIMABLE_SPACE: ' || reclaimable_space || chr(10) || 
                   'RECOMMENDATIONS           : ' || recommendations              || chr(10) || 
                   'SOLUTION 1                : ' || c1                           || chr(10) || 
                   'SOLUTION 2                : ' || c2                           || chr(10) || 
                   'SOLUTION 3                : ' || c3 Advice
FROM
                   TABLE(dbms_space.asa_recommendations('FALSE', 'FALSE', 'FALSE')); 


Clique aqui para continuar lendo este post...

Tamanho de uma tabela

Ola pessoal,

venho a mostrar a voces como temos o tamanho de uma tabela e de seus indices

– Tamanho de Cada Tabela

SELECT substr(owner,1,15) owner,segment_type, 
substr(tablespace_name,1,15) tablespace_name, 
round(sum(bytes/1024/1024),2) as Tamanho_MB 
FROM dba_segments
WHERE owner = 'SANKHYA'
AND segment_type = 'TABLE'
AND segment_name like 'TSILGT%'
GROUP BY owner,segment_type, tablespace_name, segment_name
union all
SELECT substr(owner,1,15) owner,segment_type, 
substr(tablespace_name,1,15) tablespace_name, 
round(sum(bytes/1024/1024),2) as Tamanho_MB 
FROM dba_segments
WHERE owner = 'SANKHYA'
AND segment_type = 'INDEX'
AND segment_name in (
select index_name 
from dba_indexes 
where table_name = 'TSILGT'
and owner = 'SANKHYA')
GROUP BY owner,segment_type, tablespace_name, segment_name;

SELECT owner, tablespace_name, segment_name,
round(sum(bytes/1024/1024),2) as Tamanho_MB –, extents as Num_extents
FROM dba_segments
WHERE owner = 'SCOTT'
AND segment_type = 'TABLE'
— AND segment_name like 'DEPT%'
GROUP BY owner, tablespace_name, segment_name

– Tamanho das Tabelas Por Usuário

SELECT owner, round(sum(bytes/1024/1024),2) as Tamanho_MB –, extents as Num_extents
FROM dba_segments
GROUP BY owner

– Tamanho Total das Tabelas

SELECT round(sum(bytes/1024/1024),2) as Tamanho_MB –, extents as Num_extents
FROM dba_segments

– % de Uso das TableSpaces

SELECT a.TABLESPACE_NAME "TableSpace Name",
round(a.BYTES/1024/1024) "MB Allocated",
round((a.BYTES-nvl(b.BYTES, 0)) / 1024 / 1024) "MB Used",
nvl(round(b.BYTES / 1024 / 1024), 0) "MB Free",
round(((a.BYTES-nvl(b.BYTES, 0))/a.BYTES)*100,2) "Pct Used",
round((1-((a.BYTES-nvl(b.BYTES,0))/a.BYTES))*100,2) "Pct Free"
FROM (SELECT TABLESPACE_NAME,
sum(BYTES) BYTES
FROM dba_data_files
GROUP BY TABLESPACE_NAME) a,
(SELECT TABLESPACE_NAME,
sum(BYTES) BYTES
FROM sys.dba_free_space
GROUP BY TABLESPACE_NAME) b
WHERE a.TABLESPACE_NAME = b.TABLESPACE_NAME (+)
ORDER BY ((a.BYTES-b.BYTES)/a.BYTES);

Clique aqui para continuar lendo este post...

sábado, 21 de fevereiro de 2015

Titulo Novo !!! Oracle Certification - OCP 12c

Pessoal,

Passei na prova do OCP 12c New features !

Tai o certificado !

Proximo a caminho ...



Clique aqui para continuar lendo este post...

quinta-feira, 19 de fevereiro de 2015

Bom pessoal amanha - farei minha prova do 12c !!!

Sorte para nos !
Clique aqui para continuar lendo este post...