5 votes

MacOS Catalina Homebrew problèmes d'installation de mariadb

Edit 2020-10-12 :

Je suis sous MacOS 10.15.7, les versions dans les formules de brassage sont les suivantes 10.5.6 pour mariadb y 8.0.21 pour mysql. (vous pouvez les vérifier dans /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/{mariadb,mysql}.rb ).

Mysql fonctionne bien après une installation propre par brew uninstall mysql et de supprimer tout ce qui s'y rapporte dans $(brew --prefix) , mais mariadb ne fonctionne toujours pas avec brew unlink mysql && brew link mariadb && brew services start mariadb sans supprimer les fichiers de la base de données mysql dans $(brew --prefix) .

Question originale :

J'utilise donc MacOS 10.15.2 Catalina et j'essaie d'installer mariadb (10.4.11, la dernière version) avec Homebrew.

Après avoir exécuté brew install mariadb Dans le cadre de l'enquête sur l'état de santé de la population, Brew a prévenu que la postinstalllation ne s'est pas terminé avec succès :

==> Postinstalling mariadb
==> /usr/local/Cellar/mariadb/10.4.11/bin/mysql_install_db --verbose --user=me --basedir=/usr/local/Cellar/mariadb/10.4.11 --datadir=
Last 15 lines from /Users/me/Library/Logs/Homebrew/mariadb/post_install.01.mysql_install_db:

    shell> /usr/local/Cellar/mariadb/10.4.11/bin/mysql -u root mysql
    mysql> show tables;

Try 'mysqld --help' if you have problems with paths.  Using
--general-log gives you a log in /usr/local/var/mysql that may be helpful.

The latest information about mysql_install_db is available at
https://mariadb.com/kb/en/installing-system-tables-mysql_install_db
You can find the latest source at https://downloads.mariadb.org and
the maria-discuss email list at https://launchpad.net/~maria-discuss

Please check all of the above before submitting a bug report
at http://mariadb.org/jira

Warning: The post-install step did not complete successfully
You can try again using `brew postinstall mariadb`

Je suis novice en matière de mariadb / mysql et j'ai donc suivi les instructions suivantes ce guide de mariadb.com (comme @klanomath l'a fait remarquer, ceci est dépassé (2016)) et a exécuté mysql_install_db :

$ mysql_install_db
WARNING: The host 'mymac' could not be looked up with /usr/local/Cellar/mariadb/10.4.11/bin/resolveip.
This probably means that your libc libraries are not 100 % compatible
with this binary MariaDB version. The MariaDB daemon, mysqld, should work
normally with the exception that host name resolving will not work.
This means that you should use IP addresses instead of hostnames
when specifying MariaDB privileges !
Installing MariaDB/MySQL system tables in '/usr/local/var/mysql' ...
2020-02-07 20:26:33 0 [ERROR] InnoDB: Invalid flags 0x4800 in ./ibdata1
2020-02-07 20:26:33 0 [ERROR] InnoDB: Plugin initialization aborted with error Data structure corruption
2020-02-07 20:26:33 0 [ERROR] Plugin 'InnoDB' init function returned error.
2020-02-07 20:26:33 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2020-02-07 20:26:33 0 [ERROR] Unknown/unsupported storage engine: InnoDB
2020-02-07 20:26:33 0 [ERROR] Aborting

Et le journal de mysqld :

$ mysqld --general-log
2020-02-07 20:44:45 0 [Note] mysqld (mysqld 10.4.11-MariaDB-log) starting as process 78097 ...
2020-02-07 20:44:45 0 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/var/mysql/ is case insensitive
2020-02-07 20:44:45 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2020-02-07 20:44:45 0 [Note] InnoDB: Uses event mutexes
2020-02-07 20:44:45 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2020-02-07 20:44:45 0 [Note] InnoDB: Number of pools: 1
2020-02-07 20:44:45 0 [Note] InnoDB: Using SSE2 crc32 instructions
2020-02-07 20:44:45 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M
2020-02-07 20:44:45 0 [Note] InnoDB: Completed initialization of buffer pool
2020-02-07 20:44:45 0 [ERROR] InnoDB: Invalid flags 0x4800 in ./ibdata1
2020-02-07 20:44:45 0 [ERROR] InnoDB: Plugin initialization aborted with error Data structure corruption
2020-02-07 20:44:46 0 [Note] InnoDB: Starting shutdown...
2020-02-07 20:44:46 0 [ERROR] Plugin 'InnoDB' init function returned error.
2020-02-07 20:44:46 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2020-02-07 20:44:46 0 [Note] Plugin 'FEEDBACK' is disabled.
2020-02-07 20:44:46 0 [ERROR] Could not open mysql.plugin table. Some plugins may be not loaded
2020-02-07 20:44:46 0 [ERROR] Unknown/unsupported storage engine: InnoDB
2020-02-07 20:44:46 0 [ERROR] Aborting

J'ai fait quelques recherches mais je n'ai rien trouvé d'utile. Comment puis-je compléter mariadb installation ? Toute aide est appréciée !

4voto

PhillipMwaniki Points 136

J'ai une solution qui a fonctionné pour moi. J'essayais d'installer la dernière version de Mariadb (10.5.6). Arrêtez d'abord tout service mysql que vous pourriez avoir en cours d'exécution.

brew services stop mariadb

Ensuite, vous devez supprimer le contenu de /usr/local/var/mysql sudo rm -rf /usr/local/var/mysql

Vous devez ensuite créer les fichiers d'installation de la base de données

mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mariadb)" --datadir=/usr/local/var/mysql --tmpdir=/tmp

Ceci récupérera l'emplacement du Caveau mariadb tel qu'installé par brew et fera l'installation du fichier db. L'étape suivante consiste à démarrer mariadb brew services start mariadb

Nous devons maintenant configurer un mot de passe. Ne vous embêtez pas avec mysql_secure_connection ou mariadb-secure-connection . J'ai eu des problèmes avec eux

Connectez-vous à mysql sudo mariadb -u root

Nous devons maintenant changer le mot de passe de l'utilisateur Root.

> use mysql;

> ALTER USER 'root'@'localhost' IDENTIFIED BY 'mypassword';

> flush privileges;

> quit

Vous pouvez maintenant essayer de vous connecter à mariadb mariadb -u root -p

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X