Bagaimana cara membuat Tablespace di Oracle 11g?

29

Saya tidak terlalu paham tentang Oracle, dan saya telah mencoba membuat TABLESPACE, yang terus memberi saya pesan kesalahan nama file yang tidak valid. Di bawah ini adalah sintaks yang saya gunakan:

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

Buku saya dan semua situs web yang saya tuju menyarankan agar saya menentukan path file untuk DATAFILE, dan ketika saya menentukan path, saya mendapatkan pesan kesalahan lain.

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

Apakah saya perlu membuat file data terlebih dahulu sebelum saya bisa membuat TABLESPACE? Apakah ada datafile yang sudah ada dalam database yang bisa saya gunakan? Apa yang akan menjadi sintaksis yang tepat untuk membuat tablespace dan / atau datafile? Bagaimana dan di mana saya membuat file .dbf untuk membuat tablespace?

Leigh Riffel
sumber
Voting untuk migrasi ke ServerFault, karena ini adalah tentang administrasi database.
7
Saya tahu ini jawaban yang sangat terlambat, tetapi menurut Anda apa yang dilakukan administrator database? :-)
Marian

Jawaban:

27

Jawaban untuk pertanyaan Anda dapat ditemukan dalam Referensi Bahasa SQL (kutipan berikut).

Membuat Tablespace Dasar: Contoh

Pernyataan ini membuat tablespace bernama tbs_01 dengan satu file data:

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

Sepertinya Anda baru mengenal database Oracle. Oracle menyediakan banyak dokumentasi di http://docs.oracle.com/en/database . Secara khusus, saya sarankan membaca pengantar mereka yang sangat baik ke database yang disebut Panduan Konsep .

Leigh Riffel
sumber
9

Jelas, jika Anda menginginkan datafile, Anda harus memberi nama:

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

Ada banyak contoh ini jika Anda melakukan pencarian yang sangat sederhana .

Gayus
sumber
rtfg eh? hei saya akan mencari itu ....
orbfish
8
CREATE TABLESPACE <tablespace_name>
  DATAFILE 'datafile_name.dbf'
  SIZE 20M AUTOEXTEND ON;

di mana 20M adalah ukuran file data Anda. Ukuran AutoExtend On => secara otomatis diperpanjang ketika datafile diisi.

Vimalnath
sumber
8

Untuk pertanyaan yang sangat mendasar seperti "Bagaimana cara membuat tablespace di Oracle?" Saya akan sangat merekomendasikan Dokumentasi Online yang sangat baik .

Dalam kasus tertentu, Anda mendapatkan dari sana ke Oracle® Database Administrator's Guide 11g Release 2 (11.2) - Membuat Tablespace

Uwe Hesse
sumber
5

Pastikan folder datafile Anda ada. Pada UNIX lakukan hal berikut:

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

mkdir -p /home/oracle/hait

Akhirnya, jika Anda berada di Oracle 11g di mana manajemen tablespace adalah murni lokal, Anda dapat melakukan hal berikut:

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

Ini tidak akan berfungsi di Oracle 7 atau 8i; Anda harus secara jelas menentukan bagaimana luasan Anda akan dikelola.

Tendo Kaluma
sumber
3
SQL> create tablespace vania
2 datafile 'D:/home/oracle/hait/vania01.dbf'
3 size 10M
4 ;
Menukik
sumber
1
Bisakah Anda menjelaskan hal ini sedikit lebih jauh?
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
/
luqman
sumber