Тази статия се базира на личен опит, включително целия процес на обновяване на MySQL 8.0, както и на проблемите и решенията, които са срещнати по средата.
Ценните документи, цитирани по време на процеса, се отбелязват.
Добре дошли в събирането, добре дошли в препращането, но се надявам да посочим източникаВходът към хиперлинк е видим.,ОригиналНе е лесно
Първо, изтеглете и инсталирайте необходимия инсталационен пакет и изберете според вашите нужди (ето rhel7.4, 64-битов като пример)
Входът към хиперлинк е видим.
Разкопчайте пакета с катран
Tar -zxvf mysql-8.0.4-0.1.rc.el7.x86_64.rpm-bundle.tar
Грешка
gzip: stdin: not in gzipformat
tar: Child returnedstatus 1
tar: Error is notrecoverable: exiting now
Заобиколно решение:
Премахнете параметъра z и използвайте tar -xvf за нормална декомпресия
Анализ на причините:
1. Името на компресирания файл е изкуствено променено, например: оригиналната компресия не е .gz, суфиксът се модифицира изкуствено, след което суфиксът може да бъде премахнат и след това декомпресиран, като: file FMIS2600DMP.tar.gz, премахване на суфикса gz и след това използване на tar -xvf за декомпресиране
2. Параметърът -z всъщност е програма за налягане или декомпресия, която извиква bz2, и премахването на този параметър също може да избегне този проблем
Инсталиране на софтуерни пакети
Просто следвайте следното, иначе ще има много проблеми с зависимостта на пакетите. Няма да давам конкретни проблеми, срещал съм доста
Поставете всички rpm пакети в една и съща празна папка, с изключение на mysql-community-server-miniaml-*, защото това ще конфликтира със сървъра и клиента,
След това използвайте следната команда за инсталация (препоръчвам да инсталирате всички директно, няма нужда да ограничавате много, тъй като дадох линка по-долу, защото тогава ще има проблеми с конфликти, просто инсталирайте всички 9rpm пакети с yum, препоръчва се да инсталирате с yum, не използвайте rpm команди, защото yum автоматично ще открие и реши конфликтите и зависимостите между инсталационните пакети).
sudoyum install mysql-community-*
Референция за инсталация:https://dev.mysql.com/doc/refman ... stallation-rpm.html
Не мога да се свържа с локален MySQL сървър чрез сокет '/var/lib/mysql/mysql.sock
Стъпки за разрешаване:
1 systemctl стоп mysqld (спиране на услуга)
2 rm -fr /var/lib/mysql/* (изтрийте всички файлове под /var/lib/mysql)
3 rm /var/lock/subsys/mysqld (изтрий файл за заключване)
4 Killall mysqld (Унищожаване на всички MySQL процеси)
5 systemctl стартирай mysqld (Стартирай mysql услугата.) )
Референтни връзки:https://www.cnblogs.com/okstill/p/5667138.html
Root потребителят влиза в базата данни без парола
Достъпът е отказан за потребителя 'root'@'localhost' (с парола: ДА)
Метод:
Пропуснете временната root парола и влезте в базата данни, за да смените паролата
1. Затворете услугата MySQL:
systemctl stop mysqld
2. Задайте променливата на средата да пропуска проверки за разрешения
systemctlset-environment MYSQLD_OPTS="--skip-grant-tables"
3. Рестартирайте услугата MySQL
systemctl start mysqld
4. Влезте като root
mysql -u root
В този момент можете успешно да влезете
5. Задайте root парола
АКТУАЛИЗИРАЙ mysql.userSET authentication_string= PASSWORD('Root@123') КЪДЕТО User = 'root';
След MySQL 5.6 силата на паролите беше засилена с пускането на validate_password плъгини (които на някои места изглежда са съществували и преди, но сега са задължителни). Поддръжка на изискванията за сила на паролата. , провери изискванията за конфигурация на всеки параметър на validate_password чрез следната команда,
Плъгин за одит на сила на паролата в MySQL: validate_password инструкции за използванеhttp://www.xuchanggang.cn/archives/1033.html
ПОКАЖЕТЕ ПРОМЕНЛИВИ КАТО 'validate_password%';
Можете да конфигурирате параметрите чрез следните команди, а най-важните параметри за изискванията за сила на паролата са следните политики
set global validate_password.policy=LOW;
Повторна подсилване
UPDATEmysql.user SET authentication_string = 'root123' WHERE User = 'root';
Така че последната команда за смяна на паролата е
UPDATEmysql.user SET authentication_string = 'root123' WHERE User = 'root';
6. Спри услугата mysql
systemctl stopmysqld
7. Отмени предварително зададената опция за пропускане на проверки за разрешение
systemctl unset-environment MYSQLD_OPTS
8. Започнете mySQL нормално
systemctl start mysqld
9. Влезте с новата парола, която сте задали по-рано
mysql -u root -p
Проблеми с логването в референтната връзка:http://blog.csdn.net/u014306472/article/details/78160427
Прегледайте стандартната парола
grep "временна парола"/var/log/mysqld.log
Ето копие на горната команда, написано на едно парче, така че копието да се изпълнява само веднъж, а не 3 пъти
Преди да влезеш отново, задай разрешението за пропускане да провери systemctl stop mysqld. systemctl set-environmentMYSQLD_OPTS="--skip-grant-tables"; systemctl start mysqld Нулиране След като настройката е завършена, отговорете на проверката за разрешения systemctl stopmysqld. systemctl unset-environment MYSQLD_OPTS; systemctl start mysqld;
|