Удалить mysql centos 8

Обновлено: 05.07.2024

MySQL – это открытая система управления базами данных, которая является частью стека LEMP(Linux, Nginx, MySQL, PHP/Python/Perl). Для управления данными реляционная система MySQL использует SQL (Structured Query Language).

Данный мануал поможет установить версию MySQL 8 на сервер CentOS 8.

Требования

Для работы вам понадобится сервер CentOS 8 с пользователем sudo и настроенным брандмауэром firewalld. Все необходимые инструкции можно найти в мануале по начальной настройке сервера.

1: Установка MySQL

В системе CentOS 8 пакеты MySQL 8 можно найти в стандартном репозитории.

Чтобы установить пакет mysql-server и ряд зависимостей, введите следующую команду:

sudo dnf install mysql-server

По запросу нажмите y и Enter, чтобы продолжить.

. . .
Install 49 Packages
Total download size: 46 M
Installed size: 252 M
Is this ok [y/N]: y

Система MySQL теперь установлена на ваш сервер, но пока еще она не работает. Установленный вами пакет настраивает MySQL в качестве сервиса systemd, который называется mysqld.service. Вам нужно запустить этот сервис с помощью этой команды:

sudo systemctl start mysqld.service

Чтобы убедиться, что сервис работает правильно, запустите следующую команду. Обратите внимание: большинство команд systemctl, в том числе start и status, не требуют включать .service в имя файла.

sudo systemctl status mysqld

Если сервис MySQL успешно запустился, в выводе вы увидите:

mysqld.service - MySQL 8.0 database server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2020-03-12 14:07:41 UTC; 1min 7s ago
Main PID: 15723 (mysqld)
Status: "Server is operational"
Tasks: 38 (limit: 5056)
Memory: 474.2M
CGroup: /system.slice/mysqld.service
└─15723 /usr/libexec/mysqld --basedir=/usr
Mar 12 14:07:32 cent-mysql-3 systemd[1]: Starting MySQL 8.0 database server.
Mar 12 14:07:32 cent-mysql-3 mysql-prepare-db-dir[15639]: Initializing MySQL database
Mar 12 14:07:41 cent-mysql-3 systemd[1]: Started MySQL 8.0 database server.

Затем добавьте MySQL в автозагрузку, чтобы сервис запускался вместе с вашим сервером.

sudo systemctl enable mysqld

Примечание: Если в будущем вы захотите удалить MySQL из автозагрузки, вы можете использовать команду:

sudo systemctl disable mysqld

Итак, теперь MySQL запущен и работает на вашем сервере. Теперь давайте повысим безопасность СУБД.

2: Защита MySQL

MySQL предлагает встроенный сценарий безопасности, который изменит некоторые параметры по умолчанию и заблокирует удалённый root-логин.

Запустите этот сценарий:

После этого сценарий задаст вам ряд вопросов. Сначала он предложит настроить Validate Password Plugin, который проверяет надежность вашего пароля.

Если вы решите настроить Validate Password Plugin, сценарий предложит выбрать уровень валидации пароля. Наивысший уровень можно включить, нажав 2; при этом ваш пароль должен будет включать минимум 8 символов, среди которых должны быть буквы в верхнем и нижнем регистре, цифры и специальные символы.

Securing the MySQL server deployment.
Connecting to MySQL using a blank password.
VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?
Press y|Y for Yes, any other key for No: Y
There are three levels of password validation policy:
LOW Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 2

После Validate Password Plugin сценарий предложит выбрать root-пароль MySQL. Введите надежный пароль и подтвердите его:

Please set the password for root here.
New password:
Re-enter new password:

Если вы включили Validate Password Plugin, сценарий оценит сложность вашего пароля согласно выбранному уровню. После этого сценарий уточнит, хотите ли вы оставить этот пароль или выбрать новый. Чтобы продолжить работу, не меняя пароль, нажмите у:

Estimated strength of the password: 100
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y

В остальных случаях вы можете просто нажать Y и Enter, чтобы принять данные по умолчанию. Сценарий удалит анонимных пользователей и тестовую базу данных, отключит удаленный root логин и обновит правила, чтобы MySQL сразу же работал с новыми настройками.

Теперь ваш экземпляр MySQL использует безопасные параметры. Осталось убедиться, что MySQL работает должным образом.

3: Тестирование MySQL

Чтобы проверить работу вашей СУБД, попробуйте подключиться к MySQL с помощью инструмента mysqladmin. Это клиент, предназначенный для запуска команд администрирования.

Чтобы подключиться к MySQL как root (-u root), ввести пароль (-p) и запросить версию, введите команду:

mysqladmin -u root -p version

Эта команда вернет:

mysqladmin Ver 8.0.17 for Linux on x86_64 (Source distribution)
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Server version 8.0.17
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/lib/mysql/mysql.sock
Uptime: 2 hours 52 min 37 sec
Threads: 2 Questions: 20 Slow queries: 0 Opens: 131 Flush tables: 3 Open tables: 48 Queries per second avg: 0.001

Если команда вывела на экран такой результат, значит, установка MySQL прошла успешно.

Чтобы подключиться к MySQL и приступить к работе с данными, введите:

Как и предыдущая команда mysqladmin, эта команда включает флаг –u, который позволяет указать пользователя, с помощью которого вы хотите подключиться (в данном случае это root), и флаг –p, который запрашивает пароль этого пользователя.

В данных примерах используется командная оболочка mysql и phpMyAdmin.

Если работа ведется на продуктивном сервере баз данных, рекомендуется сделать резервные копии.

Подключение к СУБД

Если мы планируем работать в командной строке, заходим в среду управления MySQL.

а) В Linux вводим команду:

* где root — пользователь, под которым мы будем подключаться к оболочке; ключ -p потребует ввода пароля.

б) В Windows запускаем командную строку — в меню пуск или найдя ее в поиске. Переходим в каталог, с установленной СУБД и запускаем одноименную команду mysql, например:

cd "%ProgramFiles%\MySQL\MySQL Server 5.5\bin\"

* в данном примере предполагается, что у нас установлена MySQL версии 5.5.

* здесь, как и в Linux, идет подключение к mysql/mariadb под учетной записью root с запросом пароля.

Создание новой базы

Для создания базы используется SQL-запрос CREATE DATABASE. Рассмотрим подробнее его использование.

Командная строка

Используйте данный шаблон команды:

> CREATE DATABASE newdb DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

* вышеописанная команда создаст базу данных с названием newdb и кодировкой UTF-8 (самая распространенная и универсальная).

Проверить, что база появилась можно командой:

* данная команда выводит в консоль список баз, созданных в СУБД.

Подключиться к базе можно командой:

phpMyAdmin

В phpMyAdmin переходим в раздел Базы данных - вводим название новой базы - выбираем кодировку и нажимаем Создать:

Создаем базу данных в phpMyAdmin

Настройка прав доступа

Чтобы к созданной базе можно было подключиться, добавим пользователя:

* где newdb.* — наша база и все ее таблицы; dbuser@localhost — имя учетной записи, которая будет подключаться с локального сервера; password — придуманный нами пароль.
** В данном примере, учетной записи будут предоставлены полные права (ALL PRIVILEGES). Подробнее о правах в MySQL читайте статью Как создать пользователя MySQL и дать ему права.

Посмотреть список пользователей, которые имеют доступ к базе можно командой:

* в данном примере мы выведем учетные записи, которым был дан прямой доступ к созданной нами базе. В данном списке не будут отражены пользователи с глобальными правами (например, root).

Поменять пароль пользователю можно одной из команд (в зависимости от версии СУБД):

* все 3 команды меняют пароль для пользователя dbuser@localhost на новый — new_password.

При необходимости, удалить пользователя можно командами:

* первая команда отнимает все привилегии, выданные пользователю. Вторая удаляет самого пользователя.

mysqladmin – это утилита командной строки, которая поставляется с MySQL сервером и используется администраторами баз данных для выполнения некоторых простых MySQL задач, таких как установка пароля root или другого пользователя, изменение пароля root или другого пользователя, мониторинг процессов mysql, перезагрузка привилегий, проверка статуса сервера и т.д.

В этой статье собраны некоторые очень полезные команды mysqladmin, которые используется системными администраторами и администраторами баз данных в их повседневной работе. У вас уже должен быть установлен MySQL сервер, чтобы вы могли повторить эти примеры.

1. Как установить пароль MySQL Root?

Если у вас свежая установка MySQL сервера, то она не требует какого-либо пароля для подключения в качестве пользователя root. Для установки в MySQL пароля root пользователя используйте следующую команду:

2. Как изменить пароль MySQL Root?

Если вы хотите изменить или обновить пароль от root в MySQL, то вам нужно напечатать следующую команду. Допустим, ваш старый пароль это 123456, и вы хотите изменить его на новый пароль xyz123:

Аналогично операция выполняется для других пользователей, вместо root вставьте имя пользователя, для которого вы хотите изменить пароль

3. Как проверить, запущен ли MySQL сервер?

Чтобы узнать, работает ли MySQL сервер, используйте следующую команду:


4. Как проверить, какую версию MySQL я использую?

Следующая команда покажет версию MySQL, а также текущий статус работы:


5. Как узнать текущий статус MySQL сервера?

Для определения статуса MySQL сервера используйте следующую команду. Mysqladmin покажет время работы с запущенными патоками и очередями.


6. Как проверить статус всех переменных и значений MySQL сервера?

Для проверки всех переменных и значений работающего MySQL сервера напечатайте следующую команду. Вывод должен быть примерно таким:


7. Как посмотреть все переменные и значения MySQL статуса?

Для просмотра всех переменных и значений запущенного MySQL сервера, используйте команду, как показано ниже:

8. Как проверить все процессы рабочего MySQL сервера?

Следующая команда отобразить все запущенные процессы запросов к базе данных MySQL:

9. Как создать базу данных на MySQL сервере?

Для создания новой команды на MySQL сервере используйте команду, которая показана ниже:

10. Как удалить базу данных на MySQL сервере?

Для удаления базы данных с MySQL сервера используйте следующую команду. Для подтверждения нажмите ‘y‘.

11. Как перезагрузить/сбросить привилегии MySQL?

Команда reload говорит серверу повторно загрузить таблицы grant. Команда refresh сбрасывает все таблицы и повторно открывает файлы журналов.

12. Как безопасно выключить MySQL сервер?

Для безопасного выключения MySQL сервера используйте следующую команду:

Вы также можете использовать следующие команды для запуска, остановки MySQL сервера:

13. Некоторые полезные команды MySQL Flush

Ниже несколько полезных flush команд с описанием.

  • flush-hosts: Очистить всю информацию из кэша хоста.
  • flush-tables: Сброс всех таблиц.
  • flush-threads: Очистить кэш всех потоков.
  • flush-logs: Очистить все информационные логи.
  • flush-privileges: Перезагрузить таблицы grant (то же как и reload).
  • flush-status: Очистить переменные статуса.

14. Как завершить спящий клиентский процесс MySQL?

Используйте следующую команду для выявления спящего клиентского процесса MySQL:

Теперь запустите команду с kill и ID процесска, как показано ниже:

Если вам нужно завершить несколько процессов, тогда передайте ID процессов в виде списка, разделённого запятыми:

15. Как вместе запустить несколько команд mysqladmin?

Если вы хотите выполнить одновременно несколько mysqladmin команд, то команда должна выглядеть примерно так:

16. Как подключиться к удалённому mysql серверу?

Для подключения к удалённому MySQL серверу исопльзуйте -h (хост) с IP адресом удалённой машины:

17. Как выполнить команды на удалённом MySQL сервере?

Допустим, вы хотите увидеть статус удалённого MySQL сервера, тогда команда будет:

18. Как запустить/остановить копирование на удалённом второстепенном MySQL сервере?

Для запуска/остановки MySQL репликации на второстепенном (salve) сервере, используйте следующие команды:

19. Как сохранить отладочную информацию MySQL в файлы журналов?

Команда говорит серверу записывать отладочную информацию об используемых блокировках, используемой памяти и использовании запросов в файл журнала MySQL, также включает информация о событиях планировщика.

20. Опции и использование mysqladmin

Все опции и доступные команды mysqladmin вы сможете узнать набрав:

Мы попытались включить в статью почти все команды mysqladmin с примерами. Если мы пропустили что-то, напишите в комментариях.

MySQL - это один из самых популярных движков баз данных, которые используются для обеспечения работы веб-сайтов и различных веб-приложений. База данных MariaDB используется на множестве веб-серверов и домашних компьютеров. Если вы хотите сменить базу данных на другую, или, например, установить MariaDB вместо MySQL, то сначала необходимо удалить старую версию.

В этой статье мы рассмотрим, как удалить MySQL в Ubuntu. Я предполагаю, что программа установлена из официальных репозиториев или PPA, поэтому удалять мы её будем таким же образом.

Удаление MySQL в Ubuntu

В Ubuntu MySQL имеет такое же имя пакетов, сюда относятся mysql-server и mysql-client. Если вы хотите удалить MariaDB, то здесь пакеты будут называться по другому: mariadb-server mariadb-client.

1. Версия MySQL

Давайте сначала посмотрим, какая версия MySQL у вас установлена. Для этого выполните:


Затем вы можете посмотреть установленные пакеты с помощью пакетного менеджера:

sudo apt search mysql-server


2. Удаление MySQL

Остановите сервис базы данных:

sudo systemctl stop mysqld


Чтобы удалить MySQL с сохранением настроек и файлов конфигурации, нужно использовать опцию remove:

sudo apt remove mysql-server mysql-common mysql-server-core-* mysql-client-core-*

Однако, если вы хотите удалить базу данных полностью, вместе со всеми её конфигурационными файлами, нужно использовать purge:

sudo apt purge mysql-server mysql-common mysql-server-core-* mysql-client-core-*

Также нужно зайти в каталог /var/lib/mysql и удалить оттуда файлы базы данных, если они вам больше не нужны:

sudo rm -Rf /var/lib/mysql/

И удалите папку конфигурационных файлов, если она осталась:

sudo rm -Rf /etc/mysql/

Не забудьте про логи:

sudo rm -rf /var/log/mysql

Удалите пользователя и группу, созданные для MySQL:

sudo deluser --remove-home mysql
sudo delgroup mysql

3. Удаление PPA

Если вы устанавливали новую версию базы данных из PPA, и этот репозиторий вам больше не нужен, его тоже желательно удалить. На данный момент официальный репозиторий MySQL устанавливается в стиле CentOS с помощью deb-пакета, который можно скачать на официальном сайте. Вам достаточно его удалить:

sudo apt purge mysql-apt-config

Если ваш репозиторий добавлялся по другому, вы можете найти его и удалить в папке /etc/apt/sources.list.d/. Файлы репозиториев MySQL будут содержать в своём имени слова mysql или mariadb. В моём случае таких файлов нет:


Выводы

В этой небольшой статье мы разобрались, как удалить MySQL Ubuntu с помощью пакетного менеджера. Как видите, просто удалить пакет недостаточно, нужно удалить ещё несколько файлов, если вы хотите полностью очистить свою систему от ненужных файлов.

Нет похожих записей


Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.

Оцените статью:

(7 оценок, среднее: 4,14 из 5)

Об авторе

2 комментария

что делать в такой ситуации:

$ sudo apt purge mysql-server mysql-common mysql-server-core-* mysql-client-core-*
Reading package lists. Done
Building dependency tree
Reading state information. Done
Note, selecting 'mysql-server-core-5.0' for glob 'mysql-server-core-*'
Note, selecting 'mysql-server-core-5.1' for glob 'mysql-server-core-*'
Note, selecting 'mysql-server-core-5.5' for glob 'mysql-server-core-*'
Note, selecting 'mysql-server-core-5.6' for glob 'mysql-server-core-*'
Note, selecting 'mysql-server-core-5.7' for glob 'mysql-server-core-*'
Note, selecting 'mysql-server-core-8.0' for glob 'mysql-server-core-*'
Package 'mysql-server-core-5.7' is not installed, so not removed
Package 'mysql-server-core-5.5' is not installed, so not removed
Package 'mysql-server-core-5.6' is not installed, so not removed
Package 'mysql-server-core-5.0' is not installed, so not removed
Package 'mysql-server-core-5.1' is not installed, so not removed
Note, selecting 'mysql-client-core-5.0' for glob 'mysql-client-core-*'
Note, selecting 'mysql-client-core-5.1' for glob 'mysql-client-core-*'
Note, selecting 'mysql-client-core-5.5' for glob 'mysql-client-core-*'
Note, selecting 'mysql-client-core-5.6' for glob 'mysql-client-core-*'
Note, selecting 'mysql-client-core-5.7' for glob 'mysql-client-core-*'
Note, selecting 'mysql-client-core-8.0' for glob 'mysql-client-core-*'
Package 'mysql-client-core-5.7' is not installed, so not removed
Package 'mysql-client-core-5.5' is not installed, so not removed
Package 'mysql-client-core-5.6' is not installed, so not removed
Package 'mysql-client-core-5.0' is not installed, so not removed
Package 'mysql-client-core-5.1' is not installed, so not removed
Package 'mysql-client-core-8.0' is not installed, so not removed
Package 'mysql-server-core-8.0' is not installed, so not removed
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
default-mysql-client : Depends: mysql-client-8.0 but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

что делать в такой ситуации?

$ sudo apt purge mysql-server mysql-common mysql-server-core-* mysql-client-core-*
Reading package lists. Done
Building dependency tree
Reading state information. Done
Note, selecting 'mysql-server-core-5.0' for glob 'mysql-server-core-*'
Note, selecting 'mysql-server-core-5.1' for glob 'mysql-server-core-*'
Note, selecting 'mysql-server-core-5.5' for glob 'mysql-server-core-*'
Note, selecting 'mysql-server-core-5.6' for glob 'mysql-server-core-*'
Note, selecting 'mysql-server-core-5.7' for glob 'mysql-server-core-*'
Note, selecting 'mysql-server-core-8.0' for glob 'mysql-server-core-*'
Package 'mysql-server-core-5.7' is not installed, so not removed
Package 'mysql-server-core-5.5' is not installed, so not removed
Package 'mysql-server-core-5.6' is not installed, so not removed
Package 'mysql-server-core-5.0' is not installed, so not removed
Package 'mysql-server-core-5.1' is not installed, so not removed
Note, selecting 'mysql-client-core-5.0' for glob 'mysql-client-core-*'
Note, selecting 'mysql-client-core-5.1' for glob 'mysql-client-core-*'
Note, selecting 'mysql-client-core-5.5' for glob 'mysql-client-core-*'
Note, selecting 'mysql-client-core-5.6' for glob 'mysql-client-core-*'
Note, selecting 'mysql-client-core-5.7' for glob 'mysql-client-core-*'
Note, selecting 'mysql-client-core-8.0' for glob 'mysql-client-core-*'
Package 'mysql-client-core-5.7' is not installed, so not removed
Package 'mysql-client-core-5.5' is not installed, so not removed
Package 'mysql-client-core-5.6' is not installed, so not removed
Package 'mysql-client-core-5.0' is not installed, so not removed
Package 'mysql-client-core-5.1' is not installed, so not removed
Package 'mysql-client-core-8.0' is not installed, so not removed
Package 'mysql-server-core-8.0' is not installed, so not removed
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
default-mysql-client : Depends: mysql-client-8.0 but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

Читайте также: