2011-05-10 70 views
1

我有一個運行在linux系統上的mysql服務器。我已經運行了一個C++ prog,它正在建立包含當前日期和時間戳的數據庫。我試圖在C++中運行另一個進程訪問不同的數據庫,但我有錯誤。另一個mysqld進程使用相同的InnoDB數據或日誌文件

誤差如下:

InnoDB: check that you do not have another mysqld process 
InnoDB: using the same InnoDB data or log files 
InnoDB: Unable to lock /var/lib/mysql/ibdata1, error: 11 

請有人可以解釋什麼在去錯在這裏

感謝

回答

0

本頁面: http://dev.mysql.com/doc/refman/5.0/en/external-locking.html

關於 「外部鎖定」 會談哪些可以打開或關閉MyISAM數據庫以支持一組數據上的多個服務器。但它似乎並不適用於InnoDB。而這個頁面: http://book.opensourceproject.org.cn/lamp/mysql/mysql5cert/opensource/0672328127/ch42lev1sec1.html

說InnoDB是不可能的,因爲它只能在只讀文件系統上完成,而InnoDB不適用於這些。

所以看起來答案是你不能這樣做,原因有兩個:首先是因爲你仍然在填充數據庫,同時也想閱讀它;第二,因爲你使用的是InnoDB而不是MyISAM。

+0

zwinck謝謝讓我對mysql的理解更加清晰。 – rasmalai 2011-05-11 02:48:07

相關問題