Все началось с того, что Tableau не смог подключиться к Mysql
Первая ошибка: нет доступа
Причина: Драйвер Mysql должен максимально соответствовать версии таблицы, иначе не совпадет, типа 64-битная система, а драйвер БД 32-битный
Решение: (Эта система Win11)
-
Откройте панель управления и измените категорию в правом верхнем углу на большие значки.
-
Найдите инструменты Windows, откройте, выберите источник данных ODBC
-
выберите добавить
-
Найдите установщик драйвера, соответствующий версии
Если подходящей версии нет, зайдите на официальный сайт для скачивания и выберите версию, которая соответствует количеству цифр автомата.
Тест прошел успешно, а затем OK
Второй баг: вход в mysql без пароля и сброс пароля
Изначально такой проблемы не было, но из-за того, что в первом баге использовалось неправильное решение и рука соскользнула, возникла эта проблема
Решение:
-
Сначала войдите в корневой каталог Mysql, а затем остановите службу mysql.
net stop mysql
намекатьНедопустимое имя службы
Поскольку эта служба не зарегистрирована в mysql, введите
mysqld install
затем введите
mysqld --console --skip-grant-tables --shared-memory
(Это утверждение относится к версии 8.0 и выше.), Версии ниже 8.0mysqld--skip-grant-tables
-
Затем произошла другая ошибка:
Должна быть проблема с файлом данных
Затем введите
mysqld --initialize-insecure
тогда мы попробуем
net start mysql
Перезагружаем сервер, если получилось, тоnet stop mysql
выключите сервер,повторно войтиmysqld --console --skip-grant-tables --shared-memory
Если в это время во всплывающем окне нет символа ERROR, проблема решена. Если проблема не устранена, обратитесь к следующему блогу:Решение ошибки (1) Блог MySQL_Sinda-CSDN
Нет ошибок сейчас
-
Это окно DOS больше нельзя перемещать,Откройте другое окно и перейдите в корневой каталог mysql.
потомВведите знакомый
mysql -uroot -p
, а потом запросите пароль, игнорируйте его, просто нажмите Enter, вы можете быть Добро пожаловать -
Идите вперед и введите следующие коды в последовательности
use mysql;
update user set authenication_string = '' where user = 'root';
quit;
-
Наконец, самое главное (сменить пароль на вход)
Сначала закройте первое окно
Затем во втором окне проверяем, не остановлен ли только что остановленный сервис mysql, и снова открываем его (
net stop / start mysql
)Затем введите знакомый оператор в корневом каталоге mysql.
mysql -uroot -p
, снова игнорируя пароль для входа (может быть и успешно, т.к. пароля нет)Затем снова введите
ALTER USER 'root'@'localhost' IDENTIFIED BY
'你的新密码'
Наконец, мы снова входим в mysql, чтобы проверить новый пароль, и это успешно.