• 12.2 DBCA fails with ORA-17502:ksfdcre:4 Failed to create file (Doc ID 2291438.1)


    Click to add to Favorites To BottomTo Bottom

    In this Document

      Symptoms
      Cause
      Solution
      References

    APPLIES TO:

    Oracle Database - Enterprise Edition - Version 12.2.0.1 and later
    Oracle Database Cloud Schema Service - Version N/A and later
    Oracle Database Exadata Express Cloud Service - Version N/A and later
    Oracle Database Exadata Cloud Machine - Version N/A and later
    Oracle Database Cloud Exadata Service - Version N/A and later
    Information in this document applies to any platform.

    SYMPTOMS

    12.2 DBCA fails with following error while creating the database.

    CREATE DATABASE "<database>"
    *
    ERROR at line 1:
    ORA-01501: CREATE DATABASE failed
    ORA-00200: control file could not be created
    ORA-00202: control file: '+DATA'
    ORA-17502: ksfdcre:4 Failed to create file +DATA
    ORA-15001: diskgroup "DATA" does not exist or is not mounted
    ORA-15040: diskgroup is incomplete

    DBCA trace:

    [Thread-258] [ 2017-07-17 17:03:16.133 BRT ] [DBEntryStep.executeImpl:494] CREATEDB without passwords = CREATE DATABASE "<database>"
    MAXINSTANCES 8
    MAXLOGHISTORY 1
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    DATAFILE SIZE 700M AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
    EXTENT MANAGEMENT LOCAL
    SYSAUX DATAFILE SIZE 550M AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
    SMALLFILE DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE SIZE 20M AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
    SMALLFILE UNDO TABLESPACE "UNDOTBS1" DATAFILE SIZE 200M AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED
    CHARACTER SET WE8ISO8859P1
    NATIONAL CHARACTER SET UTF8
    LOGFILE GROUP 1 SIZE 500M,
    GROUP 2 SIZE 500M,
    GROUP 3 SIZE 500M
    [Thread-258] [ 2017-07-17 17:03:29.477 BRT ] [SQLEngine.done:2314] Done called
    [Thread-258] [ 2017-07-17 17:03:29.478 BRT ] [SQLEngine.spoolOff:2160] Setting spool off = /u01/app/oracle/cfgtoollogs/dbca/<database>/CreateDB.log
    [Thread-258] [ 2017-07-17 17:03:29.479 BRT ] [BasicStep.configureSettings:383] messageHandler being set=oracle.sysman.assistants.util.InteractiveMessageHandler@37ffc17e
    [Thread-258] [ 2017-07-17 17:03:29.479 BRT ] [StepContext$ModeRunner.run:2961] ORA-01501: CREATE DATABASE failed
    ORA-00200: control file could not be created
    ORA-00202: control file: '+DATA'
    ORA-17502: ksfdcre:4 Failed to create file +DATA
    ORA-15001: diskgroup "DATA" does not exist or is not mounted
    ORA-15040: diskgroup is incomplete

    oracle.sysman.assistants.dbca.backend.DBEntryStep.executeImpl(DBEntryStep.java:652)
    oracle.sysman.assistants.util.step.BasicStep.execute(BasicStep.java:278)
    oracle.sysman.assistants.util.step.Step.execute(Step.java:135)
    oracle.sysman.assistants.util.step.StepContext$ModeRunner.run(StepContext.java:2941)
    java.lang.Thread.run(Thread.java:745)
    [Thread-258] [ 2017-07-17 17:03:31.397 BRT ] [SQLEngine.done:2314] Done called

    We can see the disk group is mounted already in ASM.

    SQL> select name,state from v$asm_diskgroup;

    NAME STATE
    ------------------------------ -----------
    DATA MOUNTED
    ARCHIVE MOUNTED

    ASMCMD> lsdg
    State Type Rebal Sector Logical_Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name
    MOUNTED EXTERN N 512 512 4096 1048576 20480 20426 0 20426 0 N ARCHIVE/
    MOUNTED EXTERN N 512 512 4096 4194304 102400 102300 0 102300 0 N DATA/

    SQL> select name,path,os_mb,total_mb,free_mb,mode_status,header_status from v$asm_disk;

    NAME
    ------------------------------
    PATH
    --------------------------------------------------------------------------------
    OS_MB TOTAL_MB FREE_MB MODE_ST HEADER_STATU
    ---------- ---------- ---------- ------- ------------
    ARCHIVE_0000
    /dev/oracleasm/ARCH_DISK01
    10240 10240 10213 ONLINE MEMBER

    DATA_0000
    /dev/oracleasm/DATA_DISK01
    102400 102400 102300 ONLINE MEMBER

    NAME
    ------------------------------
    PATH
    --------------------------------------------------------------------------------
    OS_MB TOTAL_MB FREE_MB MODE_ST HEADER_STATU
    ---------- ---------- ---------- ------- ------------

    ARCHIVE_0001
    /dev/oracleasm/ARCH_DISK02
    10240 10240 10213 ONLINE MEMBER

    Strace output /tmp/kfod.strace kfod :

    strace -f -o /tmp/kfod.strace kfod disks=all asm_diskstring='/dev/oracleasm/*'

    30122 read(7, "fdPecf200g253h336"..., 512) = 512
    30122 close(7) = 0
    30122 mmap(NULL, 266240, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f0129535000
    30122 munmap(0x7f0129535000, 266240) = 0
    30122 stat("/etc/sysconfig/64bit_strstr_via_64bit_strstr_sse2_unaligned", 0x7ffed274a060) = -1 ENOENT (No such file or directory)
    30122 openat(AT_FDCWD, "/dev/oracleasm", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 7
    30122 getdents(7, /* 5 entries */, 32768) = 144
    30122 newfstatat(7, "DATA_DISK01", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 80), ...}, 0) = 0
    30122 newfstatat(7, "ARCH_DISK02", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 64), ...}, 0) = 0
    30122 newfstatat(7, "ARCH_DISK01", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 48), ...}, 0) = 0
    30122 getdents(7, /* 0 entries */, 32768) = 0
    30122 close(7) = 0
    30122 stat("/dev/oracleasm/DATA_DISK01", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 80), ...}) = 0
    30122 open("/dev/oracleasm/DATA_DISK01", O_RDONLY) = -1 EACCES (Permission denied)                                      <<-----
    30122 stat("/dev/oracleasm/ARCH_DISK02", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 64), ...}) = 0
    30122 open("/dev/oracleasm/ARCH_DISK02", O_RDONLY) = -1 EACCES (Permission denied)                                       <<-----
    30122 stat("/dev/oracleasm/ARCH_DISK01", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 48), ...}) = 0
    30122 open("/dev/oracleasm/ARCH_DISK01", O_RDONLY) = -1 EACCES (Permission denied)
    30122 open("/u01/app/oracle/product/12.2.0/db/oracore/mesg/lrmus.msb", O_RDONLY) = 7

    The OS disk does not have exact permission. It has to be grid:dba instead of grid:root.

    The softlink is created for the disks

    [root@bdgrd ~]# ls -trlh /dev/oracleasm/
    total 0
    lrwxrwxrwx 1 root root 6 Jul 20 10:33 DATA_DISK02 -> ../sdh  
    lrwxrwxrwx 1 root root 6 Jul 20 10:33 ARCH_DISK02 -> ../sde
    lrwxrwxrwx 1 root root 6 Jul 20 10:33 DATA_DISK01 -> ../sdg 
    lrwxrwxrwx 1 root root 6 Jul 20 10:33 ARCH_DISK03 -> ../sdf
    lrwxrwxrwx 1 root root 6 Jul 20 10:33 ARCH_DISK01 -> ../sdd

    oracle@<host> database]$ ls -l /dev/sd*
    brw-rw---- 1 root disk 8, 0 Jul 14 17:19 /dev/sda
    brw-rw---- 1 root disk 8, 1 Jul 14 17:19 /dev/sda1
    brw-rw---- 1 root disk 8, 2 Jul 14 17:19 /dev/sda2
    brw-rw---- 1 root disk 8, 3 Jul 14 17:19 /dev/sda3
    brw-rw---- 1 root disk 8, 4 Jul 14 17:19 /dev/sda4
    brw-rw---- 1 root disk 8, 5 Jul 14 17:19 /dev/sda5
    brw-rw---- 1 root disk 8, 16 Jul 14 17:19 /dev/sdb
    brw-rw---- 1 root disk 8, 32 Jul 14 17:19 /dev/sdc
    brw-rw---- 1 grid root 8, 48 Jul 20 17:53 /dev/sdd            
    brw-rw---- 1 grid root 8, 64 Jul 20 17:32 /dev/sde
    brw-rw---- 1 grid root 8, 80 Jul 20 17:53 /dev/sdf

    [oracle@<host> <database>]$ ls -trlh $ORACLE_HOME/bin/oracle
    -rwsr-s--x 1 oracle dba 390M Jul 17 14:40 /u01/app/oracle/product/12.2.0/db/bin/oracle             

    [oracle@<host> ~]$ ls -ltr /u01/app/oracle/product/12.2.0/grid/bin/oracle
    -rwsr-s--x 1 grid oinstall 372714122 Jul 17 13:57 /u01/app/oracle/product/12.2.0/grid/bin/oracle



    CAUSE

    Due to OS disk permission issue. 

    SOLUTION

    The "oracle" executable file in the RDBMS home should be the same group that owns the ASM disks i,e.dba or vice versa.

    chown <grid home owner>:<group> <OS disk>

    example :chown grid:dba /dev/sdd

    If udev rule (/etc/udev/rules.d/99-asm.rules) configured for disks,then ensure that owner:group file properly defined in udev rule.

  • 相关阅读:
    根据系统的pid查询sql语句
    DORADO实现动态拼装查询条件
    一个Spring的配置管理接口
    MS SQL Server Management Studio连接到SQL Server命名实例的方法
    WSDL学习笔记
    显示MyBatis/Ibatis的SQL语句
    测试代码显示
    C#中一个项目中无法引用另外一个项目中的类的问题
    Learn How To Use LogMiner(Practice)
    WIN2003 IIS6 FastCGI php5.33配置重点
  • 原文地址:https://www.cnblogs.com/yaoyangding/p/15105464.html
Copyright © 2020-2023  润新知