簡體   English   中英

使用存儲引擎“ myisam”和數據目錄在mysql中創建帶錯誤的表

[英]Creating table with error in mysql with Storage engine 'myisam' and data directory

我試圖用MyISAM作為MySQL中的存儲引擎創建一個表。 但是查詢失敗,並顯示以下錯誤代碼。

Can't create/write to file '/Users/arun_kumar/Desktop/Test_DB_Data/Inde/myisam_data.MYI' (Errcode: 13)

以下是我使用過的查詢,

CREATE TABLE `test`.`myisam_data` (
  `tee_id` INT NOT NULL AUTO_INCREMENT,
  `name` TEXT,
  PRIMARY KEY (`tee_id`)
)
ENGINE = MyISAM
CHARACTER SET utf8
DATA DIRECTORY = '/Users/arun_kumar/Desktop/Test_DB_Data/Data'
INDEX DIRECTORY = '/Users/arun_kumar/Desktop/Test_DB_Data/Inde';

選擇myisam的目的是它將支持不同表的磁盤分區,在這里我需要在一個磁盤中存儲少量表,而將剩余的表存儲在具有相同數據庫的另一個磁盤中。

請幫我。

操作系統錯誤代碼13為“權限被拒絕”。 檢查您的mysql的系統用戶是否對目錄“ / Users / arun_kumar / Desktop / Test_DB_Data / Inde”和“ / Users / arun_kumar / Desktop / Test_DB_Data / Data”具有chdir()的權限。 這些目錄必須具有u + rwx,g-rwx,o-rwx(“ 700”)之類的權限,並且必須屬於mysql用戶。 任何子目錄都應屬於mysql用戶或對“其他”具有“ + x”權限

為了再次確保這是一個權限問題,請嘗試使用以下腳本創建一個名為/ tmp / mysqltest的目錄並更改其權限:

TESTDIR="/tmp/mysqltest"
mkdir "$TESTDIR"
sudo chown `ps faxu | grep 'mysqld ' | grep -v logg | grep -v grep | cut -d' ' -f1` "$TESTDIR"
sudo chmod 700 "$TESTDIR"

嘗試修改后的查詢:

CREATE TABLE `test`.`myisam_data` (
  `tee_id` INT NOT NULL AUTO_INCREMENT,
  `name` TEXT,
  PRIMARY KEY (`tee_id`)
)
ENGINE = MyISAM
CHARACTER SET utf8
DATA DIRECTORY = '/tmp/mysqltest'
INDEX DIRECTORY = '/tmp/mysqltest';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM