Часто возникает необходимость выяснить точную версию установленного сервера MySQL / MariaDB, в этой заметке я расскажу как эту самую версию узнать.
К своему удивлению, я обнаружил, что частенько специалисты не знают как выполнить эту простую процедуру или испытывают некоторые затруднения.
Ну что же — предлагаю несколько способов решить эту задачу.
Способ первый (с помощью MySQL CLI):
Выполним переход в CLI MySQL (Конечно для этого у Вас должны быть соответствующие права)
#mysql
//или
#mysql -u user -p password
где user — имя пользователя и password — пароль соответственно.
После чего выполняем следующую команду:
> select version();
Результатом выполнения этой команды в CLI MySQL будет нечто вроде:
+---------------------------------------+
| version() |
+---------------------------------------+
| 10.4.18-MariaDB-1:10.4.18+maria~focal |
+---------------------------------------+
1 row in set (0.000 sec)
Где 10.4.18-MariaDB — собственно и есть версия установленной СУБД (в данном случае MariaDB версии 10.4 ).
Способ второй (c помощью консоли сервера SHELL):
Выполним в консоли сервера следующую команду:
# mysql -V
или # mysql --version
Команду лучше выполнять от пользователя root или другого пользователя с нужными полномочиями, любо можно воспользоваться sudo
В ответ в консоли Вы увидите что-то вроде:
#mysql Ver 15.1 Distrib 10.4.18-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Где 10.4.18-MariaDB — и есть используемая версия СУБД, в данном случае на базе Ubuntu 20.04.
Update от 19.03.2021
К нам обратился пользователь с вопросом о том как узнать версию MySQL, если доступен только FTP и закрыты даже внешние подключения к СУБД.
Способ третий (если доступен только FTP):
Итак — в корневой директории нашего сайта создаем файл sqlver.php со следующим содержимым:
<!--?php $link = mysqli_connect( "localhost", //host сервера БД "login", //сюда_логин_пользователя "password" //сюда_пароль пользователя ); //проверка соединения на ошибки if (mysqli_connect_errno()) { printf("Ошибка соединения: %s\n", mysqli_connect_error()); exit(); } // вывод версии сервера printf("Версия сервера MySQL / MariaDB: %s\n", mysqli_get_server_info($link)); // закрытие соединения mysqli_close($link); ?-->
Логин и пароль пользователя — можно посмотреть в настройках CMS или конфигурационном файле, который используется в Вашем проекте
Далее в браузере открываем адрес сайта и путь к нашему новому файлу ( например example.com/sqlver.php )
и видим в браузере вывод нашего кода:
Версия сервера MySQL / MariaDB: 5.5.5-10.3.28-MariaDB-log
Где 10.3.28-MariaDB — соответственно используемая версия СУБД.
Способ четвёртый — с помощью Python
Если вы пишете приложение на Python и хотите узнать версию базы данных программно, можно использовать Python с библиотекой mysql-connector:
import mysql.connector
conn = mysql.connector.connect(
host="localhost",
user="root",
password="password"
)
cursor = conn.cursor()
cursor.execute("SELECT VERSION()")
version = cursor.fetchone()
print("Database version:", version[0])
Заключение
Определение версии MySQL или MariaDB — это важная задача для успешной работы с базой данных, будь то обновление, диагностика или проверка совместимости. Вы можете использовать командную строку, SQL-запросы, GUI-инструменты или программные библиотеки для получения нужной информации.
Попробуйте каждый из описанных методов и выберите наиболее подходящий для Ваших целей!
Надеюсь, для кого-то этот материал окажется полезным и узнать версию MySQL или MariaDB для Вас — дело нескольких секунд.
Спасибо тебе, добрый чел!!!
mysql -V — как все просто оказалось