AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / dba / Perguntas / 274644
Accepted
ellie-lumen
ellie-lumen
Asked: 2020-08-31 05:56:51 +0800 CST2020-08-31 05:56:51 +0800 CST 2020-08-31 05:56:51 +0800 CST

Onde crio um diretório create_file_dest para um pdb?

  • 772

Estou tentando aprender a criar um PDB a partir do PDB$SEED e só tenho uma dúvida sobre este vídeo que tem sido ótimo para me dar informações de colher. Qual programa esse cara está usando para mkdir para seu create_file_destdiretório? Além disso, onde ele está criando esse diretório? Ou, mais importante, onde se deve criar esse diretório e como sei que estou no lugar certo? Ele apenas sai e cria um diretório.. mas onde?

insira a descrição da imagem aqui

oracle
  • 3 3 respostas
  • 1196 Views

3 respostas

  • Voted
  1. Best Answer
    Joe
    2020-08-31T15:48:42+08:002020-08-31T15:48:42+08:00

    Você está seguindo exemplos relacionados ao Unix/Linux O/s. De seus outros posts, sua estrutura de diretórios é realmente uma grande bagunça e, acima de tudo, você está criando diretórios para PDBo Oracle home ou binários do Oracle, que é um grandeNO

    por exemploC:\App\db_home\WINDOWS.X64_193000_db_home>mkdir -p /u01/pdb1/

    Siga a documentação da Oracle para Windows OFA .

    Oracle 19c configurado na minha área de trabalho pessoal

    C:\echo %ORACLE_HOME%
    C:\app\oracle\product\19.3.0\dbhome_1 --(on your system oracle home should be C:\app\elle\product\19.3.0\dbhome_1)
    
    SQL> show con_name
    
    CON_NAME
    ------------------------------
    CDB$ROOT
    
    SQL> show parameter db_create_file_dest
    
    PARAMETER_NAME                  TYPE        VALUE
    ------------------------------  ----------  -----------
    db_create_file_dest             string      D:\oradata
    

    Arquivos de dados CDB/PDB (este é meu desktop pessoal criado ORADATA em uma unidade diferente, mas de acordo com os arquivos de dados OFA devem ser colocados no diretório ORADATA no diretório ORACLE_BASE, por exemplo, C:\app\oracle\ORADATA)

            SQL>SELECT name FROM v$datafile
            NAME
            ----------------------------------------------------------------------
            D:\ORADATA\ORCL\SYSTEM01.DBF
            D:\ORADATA\ORCL\SYSAUX01.DBF
            D:\ORADATA\ORCL\UNDOTBS01.DBF
            D:\ORADATA\ORCL\PDBSEED\SYSTEM01.DBF
            D:\ORADATA\ORCL\PDBSEED\SYSAUX01.DBF
            D:\ORADATA\ORCL\USERS01.DBF
            D:\ORADATA\ORCL\PDBSEED\UNDOTBS01.DBF
            D:\ORADATA\ORCL\ORCLPDB\SYSTEM01.DBF
            D:\ORADATA\ORCL\ORCLPDB\SYSAUX01.DBF
            D:\ORADATA\ORCL\ORCLPDB\UNDOTBS01.DBF
            D:\ORADATA\ORCL\ORCLPDB\USERS01.DBF
            D:\ORADATA\ORCL\ORCLPDB\EXAMPLE01.DBF
    

    Como você pode ver com base no parâmetro db_create_file_desttodos os arquivos de dados são criados na pasta raiz D:\ORADATA.Pdb criado com parâmetro file_name_convert('D:\ORADATA\ORCL\PDB$SEED','D:\ORADATA\ORCL\ORCLPDB')em vez de usar db_create_file_dest(já que já está definido no parâmetro de inicialização)

    Siga os exemplos com DBCAou SQLPLUS(esses exemplos estão no Linux O/S)

    Aqui está a parte divertida de criar tablespaces no PDB

    Mudar para o contêiner PDB

        SQL> CREATE TABLESPACE test;   -- 1 without datafile parameter
        
        Tablespace created.
        
        
        SQL> alter session set db_create_file_dest='D:\oradata\ORCL\orclpdb';   --2
        
        Session altered.
        
        SQL> create tablespace test01;
        
        Tablespace created.
        
        SQL> create tablespace test03 datafile 'D:\ORADATA\ORCL\ORCLPDB\TEST03.DBF' size 100M;  --3 with datafile parameter
        
        Tablespace created.
        SQL>COL T_NAME FORMAT A6
        SQL>select t.name t_name,d.name datafile
        from v$datafile d
        join v$tablespace t
        on d.ts#=t.ts#
        where t.ts# in (select ts# from v$tablespace
        where name like 'TEST%')
         
        T_NAME DATAFILE
         ------  --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
        TEST   D:\ORADATA\ORCL\4A506465BEFC4D16865F184CA10BAD44\DATAFILE\O1_MF_TEST_HNRC8S4O_.DBF                 --1
        TEST01 D:\ORADATA\ORCL\ORCLPDB\ORCL\4A506465BEFC4D16865F184CA10BAD44\DATAFILE\O1_MF_TEST01_HNRCMPH1_.DBF  --2
        TEST03 D:\ORADATA\ORCL\ORCLPDB\TEST03.DBF  --3
    

    Evite a instrução número 2.Oracle usa a convenção interna de nomenclatura de arquivos de dados para tablespaces criados sem parâmetros de arquivo de dados.

    Editar:-

    Diretórios no Oracle Base

    insira a descrição da imagem aqui

    E é claro que o diretório ORADATA deve estar lá (desde que eu configurei ORADATA em uma unidade diferente, não está na imagem).

    No futuro, no Windows, primeiro crie o diretório inicial do oracle no prompt de comando (tenho 18.3 arquivos zip.)

    C:\mkdir -p C:\app\oracle\product\18.3\db_home1

    Em seguida, extraia no diretório acima

    insira a descrição da imagem aqui

    • 2
  2. EdStevens
    2020-08-31T07:50:40+08:002020-08-31T07:50:40+08:00

    O que você quer dizer com "Qual programa esse cara está usando para mkdir para seu arquivo create_file_dest?"

    Ele está no prompt do shell. Ele está usando o comando interno 'mkdir' do próprio shell.

    Onde ele está criando esse arquivo? Não é um arquivo, é um diretório. QUANDO você finalmente definir CREATE_FILE_DEST (que é um parâmetro de inicialização para o banco de dados), então o banco de dados usará esse diretório como o local padrão para qualquer arquivo de dados criado com os comandos oracle CREATE TABLESPACE ou ALTER TABLESPACE .. ADD DATAFILE'.

    • 0
  3. ellie-lumen
    2020-08-31T09:08:20+08:002020-08-31T09:08:20+08:00

    A resposta é que não importa onde está o diretório CREATE_FILE_DEST.

    • 0

relate perguntas

  • Backups de banco de dados no Oracle - Exportar o banco de dados ou usar outras ferramentas?

  • ORDER BY usando prioridades personalizadas para colunas de texto

  • Interface sqlplus confortável? [fechado]

  • Como encontrar as instruções SQL mais recentes no banco de dados?

  • Como posso consultar nomes usando expressões regulares?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host

    • 12 respostas
  • Marko Smith

    Como fazer a saída do sqlplus aparecer em uma linha?

    • 3 respostas
  • Marko Smith

    Selecione qual tem data máxima ou data mais recente

    • 3 respostas
  • Marko Smith

    Como faço para listar todos os esquemas no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Listar todas as colunas de uma tabela especificada

    • 5 respostas
  • Marko Smith

    Como usar o sqlplus para se conectar a um banco de dados Oracle localizado em outro host sem modificar meu próprio tnsnames.ora

    • 4 respostas
  • Marko Smith

    Como você mysqldump tabela (s) específica (s)?

    • 4 respostas
  • Marko Smith

    Listar os privilégios do banco de dados usando o psql

    • 10 respostas
  • Marko Smith

    Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Como faço para listar todos os bancos de dados e tabelas usando o psql?

    • 7 respostas
  • Martin Hope
    Jin conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane Como faço para listar todos os esquemas no PostgreSQL? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh Por que o log de transações continua crescendo ou fica sem espaço? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland Listar todas as colunas de uma tabela especificada 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney O MySQL pode realizar consultas razoavelmente em bilhões de linhas? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx Como posso monitorar o andamento de uma importação de um arquivo .sql grande? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison Como você mysqldump tabela (s) específica (s)? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas Como posso cronometrar consultas SQL usando psql? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas Como faço para listar todos os bancos de dados e tabelas usando o psql? 2011-02-18 00:45:49 +0800 CST

Hot tag

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve