30 oracle
我对 Oracle 不太精明,我一直在尝试创建一个 TABLESPACE,它不断给我一个无效文件名的错误消息。以下是我使用的语法:
SQL> create Tablespace HRMT
2 datafile
3 size
4 ;
size
*
ERROR at line 3:
ORA-02236: invalid file name
Run Code Online (Sandbox Code Playgroud)
我的书和我去过的所有网站都建议我为 DATAFILE 指定文件路径,当我指定路径时,我收到另一条错误消息。
SQL> create tablespace vania
2 datafile 'home/oracle/hait/'
3 size 10M
4 ;
create tablespace vania
*
ERROR at line 1:
ORA-01119: error in creating database file 'home/oracle/hait/'
ORA-27040: file create error, unable to create file
Linux Error: 2: No such file or directory
Run Code Online (Sandbox Code Playgroud)
在创建 TABLESPACE 之前,是否需要先创建数据文件?数据库中是否有我可以使用的预先存在的数据文件?创建表空间和/或数据文件的正确语法是什么?如何以及在何处创建 .dbf 文件来创建表空间?
Lei*_*fel 28
您的问题的答案可以在SQL 语言参考中找到(摘录如下)。
创建基本表空间:示例
此语句使用一个数据文件创建一个名为 tbs_01 的表空间:
CREATE TABLESPACE tbs_01 DATAFILE 'tbs_f2.dbf' SIZE 40M ONLINE;
听起来您是 Oracle 数据库的新手。Oracle 在http://docs.oracle.com/en/database 上提供了大量文档。具体来说,我建议阅读他们对数据库的出色介绍,称为概念指南。
显然,如果你想要一个数据文件,你必须给它一个名字:
SQL> create tablespace vania
2 datafile '/home/oracle/hait/vania01.dbf'
3 size 10M
4 ;
Run Code Online (Sandbox Code Playgroud)
如果你做一个非常简单的搜索,就会有很多这样的例子。
小智 8
CREATE TABLESPACE <tablespace_name>
DATAFILE 'datafile_name.dbf'
SIZE 20M AUTOEXTEND ON;
Run Code Online (Sandbox Code Playgroud)
其中 20M 是数据文件的大小。AutoExtend On => 大小会随着数据文件的填满而自动扩展。
小智 5
确保您的数据文件夹存在。在 UNIX 上执行以下操作:
ls /home/oracle/hait #if you get an error here, it means you need to create the folder first
mkdir -p /home/oracle/hait
Run Code Online (Sandbox Code Playgroud)
最后,如果您在 Oracle 11g 中,表空间管理纯粹是本地的,您可以执行以下操作:
create tablespace vania datafile '/home/oracle/hait/vania01.dbf' size 10M;
Run Code Online (Sandbox Code Playgroud)
这在 Oracle 7 或 8i 中不起作用;您必须明确指定将如何管理您的范围。
| 归档时间: |
|
| 查看次数: |
230866 次 |
| 最近记录: |