Làm cách nào để tạo không gian bảng trong Oracle 11g?


29

Tôi không quá hiểu biết về Oracle và tôi đã cố gắng tạo ra một TABLESPACE, nó tiếp tục đưa cho tôi một thông báo lỗi về tên tệp không hợp lệ. Dưới đây là cú pháp mà tôi đã sử dụng:

SQL> create Tablespace HRMT
2 datafile
3 size
4 ;
size
*
ERROR at line 3:
ORA-02236: invalid file name

Cuốn sách của tôi và tất cả các trang web mà tôi đã đề xuất rằng tôi chỉ định đường dẫn tệp cho DATAFILE và khi tôi chỉ định một đường dẫn, tôi nhận được một thông báo lỗi khác.

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

Tôi có cần tạo datafile trước khi tôi có thể tạo TABLESPACE không? Có các tệp dữ liệu có sẵn trong cơ sở dữ liệu mà tôi có thể sử dụng không? Điều gì sẽ là cú pháp thích hợp để tạo một vùng bảng và / hoặc một tệp dữ liệu? Làm thế nào và ở đâu để tôi tạo một tệp .dbf để tạo không gian bảng?


Bỏ phiếu cho việc di chuyển sang ServerFault, bởi vì đây là về quản trị cơ sở dữ liệu.

7
Tôi biết đó là một câu trả lời rất muộn, nhưng bạn cho rằng các quản trị viên cơ sở dữ liệu làm gì? :-)
Mary

Câu trả lời:


27

Câu trả lời cho câu hỏi của bạn có thể được tìm thấy trong Tài liệu tham khảo ngôn ngữ SQL (đoạn trích sau).

Tạo không gian bảng cơ bản: Ví dụ

Câu lệnh này tạo một không gian bảng có tên tbs_01 với một tệp dữ liệu:

CREATE TABLESPACE tbs_01 DATAFILE 'tbs_f2.dbf' SIZE 40M ONLINE;

Có vẻ như bạn chưa quen với cơ sở dữ liệu của Oracle. Oracle cung cấp nhiều tài liệu tại http://docs.oracle.com/en/database . Cụ thể, tôi khuyên bạn nên đọc phần giới thiệu tuyệt vời của họ về cơ sở dữ liệu có tên là Hướng dẫn về khái niệm .



8
CREATE TABLESPACE <tablespace_name>
  DATAFILE 'datafile_name.dbf'
  SIZE 20M AUTOEXTEND ON;

trong đó 20M là kích thước của tệp dữ liệu của bạn. AutoExtend On => size được tự động mở rộng khi datafile được điền.


8

Đối với loại câu hỏi rất cơ bản như "Làm thế nào để tạo một không gian bảng trong Oracle?" Tôi rất muốn giới thiệu Tài liệu trực tuyến rất tốt .

Trong trường hợp cụ thể, bạn nhận được từ đó tới Hướng dẫn của quản trị viên cơ sở dữ liệu Oracle® 11g Phiên bản 2 (11.2) - Tạo không gian bảng


5

Hãy chắc chắn rằng thư mục datafile của bạn tồn tại. Trên UNIX, hãy làm như sau:

ls /home/oracle/hait  #if you get an error here, it means you need to create the folder first

mkdir -p /home/oracle/hait

Cuối cùng, nếu bạn ở trong Oracle 11g nơi quản lý không gian bảng hoàn toàn cục bộ, bạn có thể thực hiện các thao tác sau:

create tablespace vania datafile '/home/oracle/hait/vania01.dbf' size 10M;

Điều này sẽ không hoạt động trong Oracle 7 hoặc 8i; bạn phải xác định rõ cách thức phạm vi của bạn sẽ được quản lý.


3
SQL> create tablespace vania
2 datafile 'D:/home/oracle/hait/vania01.dbf'
3 size 10M
4 ;

1
Bạn có thể giải thích về điều này một chút nữa?
jcolebrand

1
create tablespace MY_TB
datafile 'D:\app\Administrator\oradata\MYORA\MY_TB.dbf'
uniform size 33K
max size unlimited
extend management local
segmentspace management manual
auto extend on next 40K
disable logging
/
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.