2012-09-26 6 views
6

Iam versucht, eine MySQL-Tabelle in Linux mit dem Ändern des Datenverzeichnisses an einem anderen Speicherort zu erstellen. Der ausgewählte Forder hat die volle Berechtigung. Aber ich habe einen Fehler 'Kann nicht erstellen/in Datei schreiben'. Ich googelte und festgestellt, dass dieser Fehler im Zusammenhang mit der Berechtigung verweigert wurde. Ich kann die Owner-Berechtigung des Ordners zu root ändern, indem Sie chown Befehl verwenden. Aber es zeigt immer noch den gleichen Fehler.Kann nicht erstellen/schreiben - Fehlercode 13 in Linux

mysql> create table test_table(testId int PRIMARY KEY, testName VARCHAR(20)) DATA DIRECTORY = '/home/Test/Sample/data'; 

ERROR 1 (HY000): Can't create/write to file '/home/Test/Sample/data/test_table1.MYD' (Errcode: 13) 

Was kann ich tun ??? Bitte geben Sie mir keine wertvollen Anregungen ....

+2

hat mysql die Berechtigung, in das Home-Verzeichnis des 'Test'-Benutzers zu schreiben? Höchst wahrscheinlich nicht. Nur weil "Daten" weit offen sind, heißt das nicht "Test" oder "Sample". MySQL muss Zugriffsrechte auf den GESAMTEN Verzeichnisbaum haben, der dahin führt, wohin die Datei gehen soll. –

+0

Danke für die Hilfe. Ich konnte dem Testordner keine Erlaubnis geben. Jetzt geht es. – Haseena

Antwort

8
mysql> create table test_table(testId int PRIMARY KEY, testName VARCHAR(20)) 
     DATA DIRECTORY = '/home/Test/Sample/data'; 

schreiben wie:

mysql> create table test_table(testId int PRIMARY KEY, testName VARCHAR(20)) 
     DATA DIRECTORY = '/tmp/data'; 

Um das Leben leichter machen auf das ‚/ tmp‘ Verzeichnis zu speichern versuchen, wie mysql Zugriff auf dieses Verzeichnis hat, anstatt herumfummeln mit (chown) wechselnden Besitzverhältnissen.

+0

Vielen Dank, die Bewältigungsarbeiten sind ein echtes Problem – FazeL

Verwandte Themen