Перешёл на MySQL версии 5.7 и внезапно встретил некоторые трудности. Оказалось, что в таблице mysql.user больше нет столбца password. Поэтому пришлось гуглить, где же хранятся записи о паролях пользователей.
До версии 5.7 делал проверку на наличие пользователей без паролей и/или логинов (anonimous) таким способом:
SELECT host, user, password from mysql.user;
Заходил в консоль mysql, писал эту команду, получал таблицу:
Из таблицы легко понять всё ли в порядке с правами у пользователей. Если есть пустые ячейки в password или user (или одновременно) - это плохо: возрастает вероятность проникновения злоумышленника в базу.
Но по рекомендациям Битрикса обновился до MySQL 5.7. И вместо стройной таблицы с правами доступа получил подобную ошибку:
ERROR 1054 (42S22): Unknown column 'password' in 'field list'
В новой версии MySQL у таблицы mysql.user не существует столбца password. В этом убедился сам с помощью команды:
describe mysql.user;
Оказалось, что "password" переименовали в "authentication_string". Пришлось модифицировать запрос:
SELECT host, user, authentication_string from mysql.user;
В таком виде всё выводится правильно: