![MariaDB zusammen mit MySQL installieren: mysqld konnte nicht gefunden werden](https://rvso.com/image/617794/MariaDB%20zusammen%20mit%20MySQL%20installieren%3A%20mysqld%20konnte%20nicht%20gefunden%20werden.png)
Ich folge den Anweisungen auf der MariaDB-SiteHieralles ist in Ordnung, bis ich zu dem unten gezeigten Teil komme.
[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.
Ich frage mich, ob es ein Problem mit der Verzeichnisstruktur gibt, das die Installation erschwert. Die Dokumentation ist auch alt, daher bin ich mir nicht sicher, ob ein Schritt fehlt.
Was ich bisher getan habe
- MariaDB.tar.gz heruntergeladen
- Ein Verzeichnis mit dem Namen /mariadb/ wurde erstellt.
- Extrahierte die MariaDB.tar.gz und erstellte einen symbolischen Link namens mariadb
- Eine Benutzergruppe und ein Benutzername für das MariaDB-Verzeichnis wurden erstellt
- /mariadb/data zum Speichern der MariaDB-Datendatei (Datenbank) erstellt
Kopieren Sie die vorab geschriebene Konfigurationsdatei mit diesem Befehl.
cp mariadb/support-files/my-medium.cnf mariadb/data/my.cnf
Die Datei my.cnf wurde gemäß den Anweisungen in bearbeitetHier
[Client] Port = 3307 Socket = /mariadb/data/mariadb.sock
[mysqld] Datenverzeichnis = /mariadb/data Basisverzeichnis = /mariadb/mariadb Port = 3307 Socket = /mariadb/data/mariadb.sock Benutzer = Mariadb
Kopieren Sie das Skript init.d aus den Supportdateien an den richtigen Speicherort:
- Bearbeiten Sie /etc/init.d/mariadb und ersetzen Sie mysql durch mariadb
Führen Sie mysql_install_db aus, indem Sie ihm explizit die Datei my.cnf als Argument übergeben:
scripts/mysql_install_db --defaults-file=/opt/mariadb-data/my.cnf
Allerdings kann ich diesem Befehl bei Schritt 10 nicht folgen. Also habe ich das oben Beschriebene gemacht und den Fehler angezeigt.
Antwort1
basedir
ist das „Basis“-Verzeichnis, in dem sich alle bin
lib
etc.-Verzeichnisse befinden.
Ändern .basedir = /mariadb/mariadb
basedir = /mariadb
Außerdem vermute ich, dass my.cnf
der Standort irgendwo bei ist . /mariadb/data/my.cnf
Ändern Sie ihn --defaults-file=/opt/mariadb-data/my.cnf
entsprechend.
Außerdem mysql_install_db
muss von laufen /mariadb
mitscripts/mysql_install_db
mysql_install_db
ruft das Skript von auf /usr/bin
, nicht das von /mariadb/scripts/
.
Es ist besser, Standards zu befolgen und es unter zu installieren /opt/
.
Stellen Sie außerdem sicher, dass sich Selinux im permissiven Modus befindet:
getenforce
setze "permissiv" in/etc/sysconfig/selinux