Oracle數據庫新建表空間和對應用戶

Oracle數據庫新建表空間和對應用戶

  1. 創建表空間和臨時表空間數據文件

    • 創建表空間數據文件

      SQL> CREATE TABLESPACE rec_news LOGGING DATAFILE '/home/oracle/OracleDB/user/rec_news/rec_news.dbf' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE 5120M EXTENT MANAGEMENT LOCAL;
      
      Tablespace created.
      
    • 創建臨時表空間數據文件

      SQL> CREATE TEMPORARY TABLESPACE rec_news_temp tempfile '/home/oracle/OracleDB/user/rec_news/rec_news_tmp.dbf' SIZE 100M AUTOEXTEND ON NEXT 50M MAXSIZE 1024M EXTENT MANAGEMENT LOCAL;
      
      Tablespace created.
      
  2. 創建用戶與數據庫文件關聯

    SQL> CREATE USER rec IDENTIFIED BY <password> DEFAULT TABLESPACE rec_news TEMPORARY TABLESPACE rec_news_temp;
    
    User created.
    
  3. 添加權限

    SQL> grant connect, resource, dba to rec;
    
    Grant succeeded.
    
    SQL> grant create session to rec;
    
    Grant succeeded.
    
    SQL> commit;
    
    Commit complete.
    

此時就可以以創建的用戶身份重新進入Oracle數據庫了。

以創建用戶身份進入sqlplus,執行:

[oracle@datanode1 ~]$ sqlplus

SQL*Plus: Release 11.2.0.1.0 Production on Fri Apr 6 17:56:53 2018

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

Enter user-name: rec
Enter password: 

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

SQL> select tablespace_name from user_tablespaces;

TABLESPACE_NAME
------------------------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
EXAMPLE
REC_NEWS
REC_NEWS_TEMP

8 rows selected.

可以看到查詢結果包含我們剛剛創建的兩個TABLESPACE。

具體瞭解Oracle數據庫中的數據庫、表空間等概念,參見這篇文章


問題記錄:

  1. ORA-27040: file create error, unable to create file Linux-x86_64 Error: 13: Permission denied

    SQL> CREATE TABLESPACE rec_news LOGGING DATAFILE '/home/oracle/OracleDB/user/rec_news/rec_news.dbf' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE 5120M EXTENT MANAGEMENT LOCAL;
    CREATE TABLESPACE rec_news LOGGING DATAFILE '/home/oracle/OracleDB/user/rec_news/rec_news.dbf' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE 5120M EXTENT MANAGEMENT LOCAL
    *
    ERROR at line 1:
    ORA-01119: error in creating database file
    '/home/oracle/OracleDB/user/rec_news/rec_news.dbf'
    ORA-27040: file create error, unable to create file
    Linux-x86_64 Error: 13: Permission denied
    

    經查,/home/oracle/OracleDB/user/rec_news/目錄的所有者爲root:root,修改爲oracle:oinstall後即可以oracle用戶身份正常創建。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章