2013-03-16 84 views
0

我正在配置MySQL以將其數據存儲在Amazon EBS捲上。我已經安裝量在/data,在配置和數據文件移動到體積和符號鏈接的MySQL文件:在EBS捲上配置MySQL時出錯

130316 9:59:04 InnoDB: Database was not shut down normally! 
InnoDB: Starting crash recovery. 
InnoDB: Reading tablespace information from the .ibd files... 
130316 9:59:04 InnoDB: Operating system error number 40 in a file operation. 
InnoDB: Error number 40 means 'Too many levels of symbolic links'. 
InnoDB: Some operating system error numbers are described at 
InnoDB: http://dev.mysql.com/doc/refman/5.5/en/operating-system-error-codes.html 
InnoDB: File name ./ln 
InnoDB: File operation call: 'stat'. 
InnoDB: Error: os_file_readdir_next_file() returned -1 in 
InnoDB: directory . 
InnoDB: Crash recovery may have failed for some .ibd files! 
:此錯誤幾個小時後

ln -s /data/mysql/lib/mysql /var/lib/mysql 
ln -s /data/mysql/etc/mysql/my.cnf /etc/mysql/my.cnf 
ln -s /data/mysql/log/mysqld.log /var/log/mysqld.log 

數據庫服務器運行,但崩潰

有沒有人瞭解這個錯誤,以及如何解決它?我試圖找出更多,但沒有太多的文件。我正在運行Ubuntu AMI(微)。

下面是我格式化和安裝卷(8 GB):

sudo mkfs.ext4 /dev/xvdf 
mkdir -m 000 /data 
echo "/dev/xvdf /data auto noatime 0 0" | sudo tee -a /etc/fstab 
sudo mount /data 
+0

連接的EBS卷的大小是什麼,還有你格式化並正確安裝? – 2013-03-16 16:35:14

+0

我編輯了這個問題來添加這個。 – 2013-03-16 16:39:50

回答

0

它看起來像我fat-fingergered在/data/mysql/lib/mysql/名爲ln文件。這個文件符號鏈接到它自己,這顯然創建了一個無限循環的符號鏈接,因此錯誤'Too many levels of symbolic links'

但我不明白爲什麼MySQL會嘗試首先訪問這個文件。

0

這裏有幾頭了,我可以給, 1)刪除符號鏈接,並提供了絕對路徑,可能是因爲syslink會拋出errors.If它不工作卸載mysql數據庫並重新安裝它,並確保您提供附加volume.One更多的事情停止mysql服務器之前將所有文件移動到新卷??嘗試一次重新啓動MySQL服務器,希望它有幫助!

0

下面的程序每次都適用於我。

#mkfs.ext4 /dev/xvdf

#mkdir /mnt/data

#mount /dev/xvdf /mnt/data

#/etc/init.d/mysql stop

編輯/etc/mysql/my.cnf文件並尋找「DATADIR」的條目,並更改路徑(這應該是「在/ var/lib中/ mysql「)到新的數據目錄(/ mnt/data)。

#/etc/init.d/mysql restart

0

每當看到這樣的問題,我會問:「你爲什麼不使用RDS」?

http://aws.amazon.com/rds/

這是完全一樣的,你想使用基於雲的服務這樣的問題 - 使你不必擔心給藥/配置硬件,數據庫等任何東西。

+0

RDS也有缺點..您沒有超級特權,您在更改服務器設置方面受到限制,自動或手動擴展到更多讀取的從服務器需要大量的(停機)時間,這同樣適用於快照恢復,最後它是更貴。我們已經通過自我管理的EC2服務器取代了所有的RDS實例,並且我不能爲任何高級項目推薦RDS – 2013-03-18 07:02:09

+0

(1)RDS對於小型項目來說代價很高。(2)我想提高我的系統管理員技能。我寧願修復這個問題,而不是通過切換到不同的服務來忽略它。 – 2013-03-20 17:09:42

+0

好點Michel Feldheim和Joseph Mornin! – 2013-03-21 00:11:55