Base de conhecimento

Está é uma base de conhecimento para facilitar algumas tarefas cotidianas



Fora do Sqlplus
  • SHOW PARAMETER DUMP
  • PEGAR O DEST NA TABELA
  • SELECT * FROM V$PARAMETER WHERE NAME LIKE '%dump%'
  • ACESSAR O ENDERECO DA V$PARAMETER - background_dump_dest
  • tail -f alert_orcl.log
  • ps -ef | grep pmon (lista processos da maquina)
  • . oraenv nomeInstancia (seta váriavel de ambiente)
  • sqlplus / as sysdba
  • scp *.rpm oracle@192.168.1.1:/u01/install (copiar do servidor atual para o endereco de ip definido)
  • set -o vi (Evitar problemas ao pressionar direcionais e setas)
  • dbca (database creator assistent)
  • clear (Limpa tela)
  • pwd (diretorio atual)
  • ls (Lista diretorio)
  • cd /u01 (entrar no diretorio u01)
  • df -m (mostra os filesystems em mb)
  • df -g (mostra os filesystems em gb)
  • cd ~ (Volta para home do usuário)
  • cd .. (Volta para um diretorio anterior ao atual)
  • ls -lrt (Lista diretorio ordenação crescente)
  • ls -lt (Lista diretorio ordenação desc)
  • ls | wc -l (lista quantidade dentro do diretorio)
  • ls -l | wc -l (lista quantidade dentro do diretorio contando com o diretório atual)
  • du -g -s * (pegar o tamanho das pastas)
  • du -g -s * | sort (pegar o tamanho das pastas com ordenacao)
  • echo (exibir valores)
  • date
  • echo :1 > teste.txt
  • su -u (Muda o usuário para root)
  • touch nomearquivo.txt para criar um arquivo vazio
  • gzip -1 (Compactar o -1 é o nível de compactação. Ele pode ir de 1 a 9)
  • gzip -d (Descompactar)
  • Smit (Abre o painel de controle no AIX)
  • cfgmgr - Dar refresh no rack para atualizar os discos
  • chfs -a size=+1G (Adicionar + 1GB no filesystem)
  • chfs -a size=30G (Defini para 30GB o filesystem)
  • lsnrctl stop - Parar o listener
  • chgrp novogrupo nomedoarquivo.txt (muda o grupo do arquivo)
  • crontab -l (Lista as tarefas da máquina)
  • cp (cópia)
  • mv (move)
  • rm -f -rf * (-f para formçar e -rf para fazer recursivamente ) - Apagar diretorio e arquivos
Listar Discos
  • lsdev -Cc disk -F name | while read hdisk; do echo ${hdisk},$(getconf DISK_SIZE /dev/${hdisk}),$(odmget -q "name=${hdisk} and attribute=unique_id" CuAt|grep value|cut -d '"' -f2) done
NMON
  • p - Ver quantidade processador
  • c - Ver uso CPU
  • m - Ver uso de memória ram
  • m - Ver uso de disco
Listar Volumes
  • lspv (Lista Discos Físicos) --> Exemplo
  • lslv (Lista Logical Volumes)
  • lsvg (Lista Volumes Group)
  • lsvg -l rootvg - lista logical volume
  • lsvg -l oravg - lista logical volume
Abrir o XClock
  • Antes de executar este comando abrir o xming. Depois executar os comandos:
  • export DISPLAY=ip:0.0
  • xhost +
  • xclock
Tamanho das pastas e ordenação
  • du -g -s * - lista diretorios e tamanho das pastas
  • du -g -s * | sort - lista e faz ordenação do primeiro campo como texto
  • du -g -s * | sort -n - lista e faz a ordenação do primeiro campo como numerico
  • du -g -s * | sort -r - lista e ordena de forma desc
  • du -g -s * | sort -rn - lista e ordena como primeiro campo numerico e desc
  • vi nomearquivo.txt (abre o arquivo)
  • :q (- sair)
  • :q! (força a saída do arquivo sem gravar)
  • i modo inserção)
  • x (exclui um caracter)
  • dd (apaga a linha inteira)
  • w (comando para salvar)
  • :wq (comando para salvar)
  • Observação: utilizar ESC + letra correspondente a ação (EX: Para inserir ESC + i)Observação:
  • SELECT status FROM V$INSTANCE; (Digitar no sqlplus para verificar o status do banco)
  • shutdown immediate (Parar o banco)
  • shutdown abort (Mata todas as tarefas do banco, não é recomendado, pois pode gerar perda de dados)
  • startup (Inicia o banco)
  • startup Mount (Inicia o banco em estado mount. Nesse estado você pode executar o alter database)
  • Alter database open (Iniciar o banco quando ele estiver em estado Mount)
  • Alter database noarchivelog (Alterar o banco para não criar archivelog)
  • show parameter processes (Verificar a o parametro proccesses)
  • show parameter sessions (Verificar o parametro sessions
  • ALTER SYSTEM SET PROCESSES=1000 SCOPE=SPFILE; (Alterar o parametro processes) - Necessário reiniciar a instância
  • ALTER SYSTEM SET SESSIONS=1000 SCOPE=SPFILE; (Alterar o parametro session) - Necessário reiniciar a instância
  • CREATE ROLE NOME_ROLE IDENTIFIED BY SENHA;
  • GRANT CONNECT TO NOME_ROLE;
  • GRANT CREATE SESSION TO NOME_ROLE;
  • GRANT SELECT ANY TABLE TO NOME_ROLE;
  • GRANT FLASHBACK ON DBA_OBJECTS TO TESTE;
  • CREATE USER NOME_USER IDENTIFIED BY SENHA;
  • GRANT NOME_ROLE TO NOME_USER;
  • ALTER USER USER_NAME IDENTIFIED BY "SENHA"
  • REVOKE NOME_ROLE ON object FROM user;
Criar TableSpace
  • create tablespace confidencial datafile '/u01/oracle/product/10.2.0/oradata/orcl/confidencial_01.dbf' size 10m
Redimensionar DataFile
  • alter database datafile '/u01/oracle/product/10.2.0/oradata/orcl/tbs_quota_01.dbf' resize 200m;
Adicionar limites de uso na tablespace por objeto
  • alter user teste quota 100m on tbs_quota; (quota de 100m)
  • alter user teste quota unlimited on tbl_unlimited; (quota ilimitada)

Export

  • SELECT * FROM DBA_DIRECTORIES; (Diretórios do banco)
  • CREATE DIRECTORY NOME_DIRETORIO AS '/u01/oradata/exports'; (Criar o diretório onde será feito os exports)
Export Convencional
  • Digitar no AIX: exp owner=nomeTabela1, nometabela2 file=/u01/oradata/exports/export1.dmp log=/u01/oradata/exports/export1.log
ExpDP
  • Digitar no AIX: expdp directory=dumpdir dumpfile=expdp02.dmp logfile=log_expdp02.log exclude=statistics,table:\"IN \(\'EMP\',\'BONUS\'\)\"
  • Digitar no AIX: expdp USUARIO@BD schemas=SCHMA1, SCHMA2, SCHMA3, SCHMA4,SCHMA5 directory=DUMPDIR2 EXCLUDE=STATISTICS dumpfile=FILENAME.dmp logfile=LOGNAME.log





Import

Import convencional
  • imp fromuser=scott touser=scott2 file=/u01/oradata/exports/export1.dmp log=/u01/oradata/exports/imp_scott1.log
ImpDP
  • impdp DUMPFILE=nome_arquivo_exp.dmp logfile=nome_arquivo_log.log parfile=par_ctis.par (Usando parfile)
  • impdp DIRECTORY=dumpdir DUMPFILE=EXP_CTIS_20022020_2.DMP logfile=IMP_CTIS_20022020_RMP.log SCHEMAS=ctis
Detalhes Export e Import DP
Como usar a dll ClosedXML - Gerar Excel
  • 
    // Baixe a dll através do nuget  Install-Package ClosedXML -Version 0.94.2 
    // É necessário importar o arquivo CLosedXML using ClosedXML.Excel; 
    // Método que retorna uma memorystream de um arquivo Excel
    protected  MemoryStream  GerarExcel()
    {
        try
        {
            
            workbook = new  XLWorkbook(); 
            ws = workbook.Worksheets.Add("Plan1")
    
            ws.Cell($"A1").Value = "Titulo centralizado e mesclado";
            ws.Range($"A1:H2").Merge();
            ws.Cell($"A1").Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center;
            ws.Cell($"A1").Style.Alignment.Vertical = XLAlignmentVerticalValues.Center;
            ws.Range($"A1:H2").Style.Fill.BackgroundColor = XLColor.LightGray;
            ws.Range($"A1:H2").Style.Font.FontSize = 16;
            ws.Range($"A1:H2").Style.Font.Bold = true ;
            
            /*Adicionar borda*/
    
            ws.Range($"A1:H2").Style.Border.TopBorder = XLBorderStyleValues.Thin;
            ws.Range($"A1:H2").Style.Border.BottomBorder = XLBorderStyleValues.Thin;
            ws.Range($"A1:H2").Style.Border.LeftBorder = XLBorderStyleValues.Thin;
            ws.Range($A1:H2").Style.Border.RightBorder = XLBorderStyleValues.Thin;
    
            ws.Columns().AdjustToContents();
    
             MemoryStream  obj_stream = new  MemoryStream();  
    
            var tempFile = System.IO.Path.Combine(System.IO.Path.GetTempPath(), Guid.NewGuid() + ".xlsx");
            workbook.SaveAs(tempFile);
            obj_stream = new  MemoryStream(File.ReadAllBytes(tempFile));
            File.Delete(tempFile);
            obj_stream.Position = 0;
            return obj_stream;
        }
        catch (Exception Ex)
        {
            //Criar tratamento para exception
            return null ;
        }
    }
    
    
Conexão banco de dados
  • (Oracle) < add name="nomebd" connectionString="DATA SOURCE=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.1.100)(PORT=1521))(CONNECT_DATA=(SID=nomebd)));USER ID=usuario;PASSWORD=senha" />