Wie erstelle ich einen Tablespace in Oracle 11g?


29

Ich bin nicht besonders versiert in Oracle und habe versucht, ein TABLESPACE zu erstellen, das mir weiterhin eine Fehlermeldung mit ungültigem Dateinamen anzeigt. Unten ist die Syntax, die ich verwendet habe:

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

In meinem Buch und auf allen Websites, auf denen ich vorgeschlagen habe, den Dateipfad für die DATENDATEI anzugeben, wird eine weitere Fehlermeldung angezeigt, wenn ich einen Pfad angebe.

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

Muss ich zuerst die Datendatei erstellen, bevor ich den TABLESPACE erstellen kann? Gibt es in der Datenbank bereits vorhandene Datendateien, die ich verwenden kann? Was wäre die richtige Syntax, um einen Tablespace und / oder eine Datendatei zu erstellen? Wie und wo erstelle ich eine DBF-Datei, um den Tablespace zu erstellen?


Abstimmung für die Migration zu ServerFault, da es sich um die Verwaltung einer Datenbank handelt.

7
Ich weiß, dass es eine sehr, sehr späte Antwort ist, aber was glauben Sie, machen Datenbankadministratoren? :-)
Marian

Antworten:


27

Die Antwort auf Ihre Frage finden Sie in der SQL-Sprachreferenz (Auszug folgt).

Erstellen grundlegender Tablespaces: Beispiele

Diese Anweisung erstellt einen Tabellenbereich mit dem Namen tbs_01 mit einer Datendatei:

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

Es klingt, als wären Sie neu in Oracle-Datenbanken. Oracle bietet eine Fülle von Dokumentationen unter http://docs.oracle.com/en/database . Insbesondere empfehle ich, die hervorragende Einführung in die Datenbank namens Concepts Guide zu lesen .



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

Dabei ist 20M die Größe Ihrer Datendatei. AutoExtend On => Größe wird automatisch erweitert, wenn die Datendatei gefüllt wird.



5

Stellen Sie sicher, dass Ihr Datendateiordner vorhanden ist. Gehen Sie unter UNIX folgendermaßen vor:

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

mkdir -p /home/oracle/hait

Wenn Sie sich in Oracle 11g befinden, in dem die Tablespace-Verwaltung rein lokal ist, können Sie Folgendes tun:

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

Dies funktioniert in Oracle 7 oder 8i nicht. Sie müssen klar angeben, wie Ihre Extents verwaltet werden sollen.


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

1
Können Sie das etwas näher erläutern?
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
/
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.