Коннект к mysql по TCP
mysql --user root --host localhost --port 3306 --protocol tcpСоздать БД
CREATE DATABASE $DB_NAME character set utf8;Добавить пользователя
CREATE USER $DB_USER@localhost IDENTIFIED BY '$DB_PASSWORD';Дать права пользователю на БД
GRANT ALL ON $DB_NAME.* TO $DB_USER@localhost;на удаленный доступ:
GRANT ALL PRIVILEGES ON $DB_NAME.* TO $DB_USER@'%' IDENTIFIED BY '$DB_PASSWORD';на удаленный доступ на все таблицы:
grant all privileges on *.* to DB_USER@'%';сменить пароль пользователю
SET PASSWORD FOR логин@localhost = PASSWORD('пароль'); SET PASSWORD FOR логин@"%" = PASSWORD('пароль');что бы права вступили в силу:
flush privileges;Посмотреть права пользователя
SHOW GRANTS for $DB_USER@localhost;Если нужно залить большой дамп, то в /etc/my.cnf в секцию [mysqld] добавить:
max_allowed_packet = 16MРабота с кластером мастер-слейв
посмотреть состояние мастера:
show master status;посмотреть состояние слейва:
SHOW SLAVE STATUS\GПосмотреть структуры таблицы в БД
describe <table_name>;или
SHOW CREATE TABLE <table_name>;Посмотреть состояние таблиц в БД
SHOW TABLE STATUS;Сброс пароля mysql
1). В /etc/mycnf в секцию [mysqld] вставляем строку
skip-grant-tables2). Перезапустить mysqld.
После этого пароль будут сброшен и можно ввести любой другой.
#db
👉 @database_info