Cet article est basé sur une expérience personnelle, incluant l’ensemble du processus de mise à niveau de MySQL 8.0, ainsi que sur les problèmes rencontrés et les solutions rencontrées en intermédiaire.
Les documents précieux référencés tout au long du processus sont indiqués.
Bienvenue pour collecter, bienvenue pour avancer, mais j’espère indiquer la sourceLa connexion hyperlientérée est visible.,Langue sourcePas facile
D’abord, téléchargez et installez le paquet d’installation requis, et choisissez selon vos besoins (voici rhel7.4, 64 bits par exemple)
La connexion hyperlientérée est visible.
Dézippe le paquet de goudron
Tar -zxvf mysql-8.0.4-0.1.rc.el7.x86_64.rpm-bundle.tar
Erreur
gzip: stdin: not in gzipformat
tar: Child returnedstatus 1
tar: Error is notrecoverable: exiting now
Solution de contournement :
Retirez le paramètre z et utilisez tar -xvf pour décompresser normalement
Analyse des causes :
1. Le nom du fichier compressé a été modifié artificiellement, par exemple : la compression originale n’est pas .gz, le suffixe est modifié artificiellement, puis le suffixe peut être retiré puis décompressé, par exemple : fichier FMIS2600DMP.tar.gz, suppression du suffixe gz, puis utiliser tar -xvf pour décompresser
2. Le paramètre -z est en réalité un programme de pressurisation ou de décompression qui appelle bz2, et supprimer ce paramètre peut aussi éviter ce problème
Installation de logiciels
Suivez simplement ce qui suit ici, sinon il y aura beaucoup de problèmes de dépendance aux paquets. Je ne donnerai pas de problèmes spécifiques, j’en ai rencontré pas mal
Mettez tous les paquets rpm dans le même dossier vide, sauf mysql-community-server-miniaml-*, car cela entrera en conflit avec le serveur et le client,
Ensuite, utilisez la commande suivante pour installer (je recommande de tous les installer directement, il n’y a pas besoin de trop limiter car j’ai donné le lien ci-dessous, car il y aura alors des problèmes de conflit, installez simplement tous les packages 9 tours avec yum, il est recommandé d’installer avec yum, ne pas utiliser de commandes rpm, car yum détectera et résoudra automatiquement les conflits et dépendances entre les paquets d’installation)
Sudoyum install mysql-community-*
Référence d’installation :https://dev.mysql.com/doc/refman ... stallation-rpm.html
Impossible de se connecter au serveur MySQL local via le socket '/var/lib/mysql/mysql.sock
Étapes de résolution :
1 SystemCTL Stop MySQL (Arrêt du service)
2 rm -fr /var/lib/mysql/* (supprimer tous les fichiers sous /var/lib/mysql)
3 rm /var/lock/subsys/mysqld (supprimer le fichier de verrouillage)
4 tuer tous les processus mysqld (tuer tous les processus mysqld)
5 systemctl start mysqld (Démarrer le service mysql.) )
Liens de référence :https://www.cnblogs.com/okstill/p/5667138.html
L’utilisateur root se connecte à la base de données sans mot de passe
Accès refusé pour l’utilisateur 'root'@'localhost' (avec mot de passe : OUI)
Méthode:
Sauter le mot de passe temporaire root et connectez-vous à la base de données pour changer le mot de passe
1. Fermer le service MySQL :
systemctl stop mysqld
2. Définir la variable d’environnement pour qu’elle saute les vérifications d’autorisations
systemctlset-environment MYSQLD_OPTS= »--skip-grant-tables »
3. Redémarrer le service MySQL
systemctl start mysqld
4. Se connecter en tant que racine
mysql -u root
À ce stade, vous pouvez vous connecter avec succès
5. Définir un mot de passe root
MISE À JOUR MYSQL.USERSET : authentication_string= PASSWORD('Root@123') OÙ User = 'root' ;
Après MySQL 5.6, la puissance des mots de passe a été renforcée avec la sortie de validate_password plugins (qui semblent exister auparavant dans certains endroits, mais qui sont désormais obligatoires). Prenez en charge les exigences de force du mot de passe. , vérifie les exigences de configuration de chaque paramètre du validate_password via la commande suivante,
Plugin d’audit de la force des mots de passe MySQL : validate_password instructions d’utilisationhttp://www.xuchanggang.cn/archives/1033.html
AFFICHER DES VARIABLES COMME « validate_password % » ;
Vous pouvez configurer les paramètres en utilisant les commandes suivantes, et les paramètres les plus importants pour les exigences de renforcement du mot de passe sont les politiques suivantes
définir global validate_password.policy=LOW ;
Renforcement de la loi
UPDATEmysql.user SET authentication_string = 'root123' OÙ User = 'root' ;
La commande finale pour changer le mot de passe est donc
UPDATEmysql.user SET authentication_string = 'root123' OÙ User = 'root' ;
6. Arrêter le service mysql
systemctl stopmysqld
7. Annuler l’option précédemment définie pour sauter les vérifications d’autorisations
Systemctl unset-environment MYSQLD_OPTS
8. Lance mysql normalement
systemctl start mysqld
9. Connectez-vous avec le nouveau mot de passe que vous avez défini plus tôt
mysql -u racine -p
Problèmes de connexion dans la référence :http://blog.csdn.net/u014306472/article/details/78160427
Vérifiez le mot de passe par défaut
grep « mot de passe temporaire »/var/log/mysqld.log
Voici une copie de la commande ci-dessus écrite en un seul morceau, de sorte que la copie ne soit exécutée qu’une seule fois, et non trois fois
Avant de vous reconnecter, définissez la permission de saut pour vérifier sysctl stop mysqld. systemctl set-environmentMYSQLD_OPTS= »--skip-grant-tables » ; systemctl start mysqld Réinitialisation Après avoir terminé le paramètre, répondez à la vérification des permissions systemctl stopmysqld. systemctl unset-environment MYSQLD_OPTS ; systemctl start mysqld ;
|