2016-04-02 90 views
0

我是一個SQL Server的傢伙,只是在最近才決定冒險到MySQL的世界,遇到了被阻止我前進的問題:(MariaDB的在Windows 8的InnoDB錯誤

我已經安裝MariaDB的和開始運行

mysqld.exe --console

測試安裝並收到以下錯誤

[ERROR] InnoDB: .\ibdata1 can't be opened in read-write mode 

我已經做了相當多的研究,並沒有找到可行的解決方案。

我曾嘗試以下:

經過用戶權限ibdata1中的包含文件夾它位於C:\ Program Files文件\ MariaDB的10.1 \數據,一切看起來是正確的。

我已經嘗試從上述位置刪除ibdata1和日誌文件,停止mysql並重新啓動。

我已嘗試修復該應用程序。

我試過卸載並重新安裝。

這些都沒有奏效。

如果您有任何可能幫助到我的信息,請讓我知道。

這是在Windows 8上,MariaDB版本10.1.13。

謝謝!

+0

按照戴的建議,使用'mysql',而不是'mysqld'與服務器通話。 –

+0

@RickJames請說明一下? – David

+0

在後臺設置mysqld作爲服務器(服務)不要手動運行它。運行'mysql'作爲客戶端;讓它與mysqld交談。 –

回答

1

您正在交互式地從控制檯運行MariaDB,這意味着您正在本地用戶帳戶安全上下文中運行它。我猜測命令提示窗口並沒有先提升,所以你的安全級別不會授予你在%programfiles%下寫入任何東西的權限。

有兩種選擇:

  1. 更改MariaDB的配置文件存儲%ALLUSERSPROFILE%下(這是C:\ProgramData在Windows 8)或您的本地用戶帳戶。
  2. 運行MariaDB作爲後臺服務,並擁有自己的用戶帳戶(服務標識,或許,如果您對此適用,否則是普通用戶帳戶),並具有適當的權限。

出於好奇,爲什麼運行Windows 8而不是Windows 8.1?

+0

感謝您的回覆!我沒有忘記提及我在嘗試上述操作時以管理員身份運行cmd。以管理員身份運行時,這會保持不變嗎? – David

+0

我正在運行Windows 8,因爲我公司的系統管理員處理所有的Windows更新,並且我還沒有收到Windows 8.1更新......在這個速度下,我們將直接跳到Windows 10. – David

+0

另外,正如我上面提到的,我刪除了ibdata和日誌文件,並且Maria能夠重新創建它們。這導致我相信我的權限很好。 – David

0

MariaDB MSI在C:\ Program Files \ MariaDB ... \ data下安裝數據目錄(與SQLServer沒什麼不同,其中數據目錄也位於安裝根目錄下)。在安裝過程中,您被問到是否要作爲服務進行安裝。對此表示「是」,然後您不需要在控制檯窗口上啓動mysqld,它已經在那裏,作爲服務運行。

也許這個服務已經在運行了,因此第二次嘗試打開文件(當你運行mysqld --console的時候)並不成功。