我按照 MariaDB 網站上的說明進行操作這裡一切都很好,直到我到達下圖所示的部分。
[root@squir scripts]# mysql_install_db --defaults-file=/mariadb/data/my.cnf
FATAL ERROR: Could not find mysqld
The following directories were searched:
/mariadb/mariadb/libexec
/mariadb/mariadb/sbin
/mariadb/mariadb/bin
If you compiled from source, you need to run 'make install' to
copy the software into the correct location ready for operation.
If you are using a binary release, you must either be at the top
level of the extracted archive, or pass the --basedir option
pointing to that location.
我想知道是否目錄結構有問題,導致安裝混亂。該文件也很舊,所以我不確定是否缺少一個步驟。
到目前為止我做了什麼
- 下載MariaDB.tar.gz
- 建立了一個名為 /mariadb/ 的目錄
- 提取 MariaDB.tar.gz 並建立一個名為 mariadb 的符號鏈接
- 為 MariaDB 目錄建立使用者群組和使用者名稱
- 建立 /mariadb/data 用於儲存 MariaDB 資料檔(資料庫)
透過此命令複製預先寫入的設定檔。
cp mariadb/support-files/my-medium.cnf mariadb/data/my.cnf
按照中的說明編輯 my.cnf 文件這裡
[客戶端] 連接埠 = 3307 套接字 = /mariadb/data/mariadb.sock
[mysqld] datadir = /mariadb/data basedir = /mariadb/mariadb 連接埠 = 3307 套接字 = /mariadb/data/mariadb.sock 使用者 = mariadb
從正確位置的支援文件複製 init.d 腳本:
- 編輯 /etc/init.d/mariadb 將 mysql 替換為 mariadb
透過明確提供 my.cnf 檔案作為參數來運行 mysql_install_db:
腳本/mysql_install_db --defaults-file=/opt/mariadb-data/my.cnf
雖然在第10步,我無法遵循這個命令。所以我做了上面所說的話並顯示了錯誤。
答案1
basedir
是「base」目錄,所有bin
lib
etc目錄都駐留在其中。
改成 。basedir = /mariadb/mariadb
basedir = /mariadb
另外,我猜my.cnf
位置是在某處/mariadb/data/my.cnf
,--defaults-file=/opt/mariadb-data/my.cnf
相應地改變。
另外,mysql_install_db
必須從/mariadb
with運行scripts/mysql_install_db
mysql_install_db
將呼叫來自 的腳本/usr/bin
,而不是來自 的腳本/mariadb/scripts/
。
最好遵循標準並將其安裝在/opt/
.
另外,請確保 selinux 處於寬容模式:
getenforce
設定“允許”/etc/sysconfig/selinux