This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
сервис_mysql [2018/04/28 17:06] val [Debian/Ubuntu] |
сервис_mysql [2025/06/30 06:41] (current) val [Debian/Ubuntu] |
||
|---|---|---|---|
| Line 5: | Line 5: | ||
| ==== Debian/Ubuntu ==== | ==== Debian/Ubuntu ==== | ||
| + | * !!! от 2GB RAM | ||
| * на все вопросы о пароле пользователя root нажимаем "Enter" | * на все вопросы о пароле пользователя root нажимаем "Enter" | ||
| * ставится 3-4 минуты | * ставится 3-4 минуты | ||
| <code> | <code> | ||
| - | root@server:~# apt install mysql-server | + | # apt install default-mysql-server |
| </code> | </code> | ||
| Line 45: | Line 46: | ||
| </code> | </code> | ||
| + | ===== Управление параметрами сервера ===== | ||
| + | |||
| + | <code> | ||
| + | # cat /etc/mysql/conf.d/my-custom-settings.cnf | ||
| + | </code><code> | ||
| + | [mysqld] | ||
| + | sql_mode="" | ||
| + | innodb_strict_mode=OFF | ||
| + | </code><code> | ||
| + | # service mysql restart | ||
| + | </code> | ||
| ===== Смена пароля пользователя root ===== | ===== Смена пароля пользователя root ===== | ||
| - | ==== Начиная версии 5.7 ==== | + | * [[https://mariadb.com/kb/en/authentication-plugin-unix-socket/|Authentication Plugin - Unix Socket]] |
| * [[https://www.rosehosting.com/blog/how-to-reset-your-mariadb-root-password/|How to reset your MariaDB root password?]] | * [[https://www.rosehosting.com/blog/how-to-reset-your-mariadb-root-password/|How to reset your MariaDB root password?]] | ||
| + | ==== MariaDB ==== | ||
| + | |||
| + | <code> | ||
| + | MariaDB [(none)]> ALTER USER root@localhost IDENTIFIED VIA mysql_native_password; | ||
| + | |||
| + | MariaDB [(none)]> SET PASSWORD = PASSWORD('12345678'); | ||
| + | |||
| + | # service mysql restart | ||
| + | </code> | ||
| + | |||
| + | ==== MySQL, начиная c версии 5.7 ==== | ||
| + | |||
| * [[https://www.percona.com/blog/2016/03/16/change-user-password-in-mysql-5-7-with-plugin-auth_socket/|Change user password in MySQL 5.7 with “plugin: auth_socket”]] | * [[https://www.percona.com/blog/2016/03/16/change-user-password-in-mysql-5-7-with-plugin-auth_socket/|Change user password in MySQL 5.7 with “plugin: auth_socket”]] | ||
| Line 56: | Line 79: | ||
| ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '12345678'; | ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '12345678'; | ||
| </code> | </code> | ||
| - | ==== До версии 5.7 ==== | + | ==== MySQL, до версии 5.7 ==== |
| <code> | <code> | ||
| # mysqladmin --user=root password somepassword | # mysqladmin --user=root password somepassword | ||
| Line 76: | Line 99: | ||
| ==== Из командной строки ==== | ==== Из командной строки ==== | ||
| <code> | <code> | ||
| - | # mysql billing -u billing --password=XXX -B --skip-column-names -e "select login, pass from accounts where uid=YYY" | + | # mysql billing -u billing --password=XXX -B --skip-column-names -e "select login, pass from accounts where uid=YYY" | tr '\t' ';' |
| + | </code> | ||
| + | |||
| + | ==== По сети ==== | ||
| + | |||
| + | * [[https://serverfault.com/questions/483339/changing-host-permissions-for-mysql-users]] | ||
| + | |||
| + | <code> | ||
| + | # cat /etc/mysql/mysql.conf.d/mysqld.cnf | ||
| + | </code><code> | ||
| + | #... | ||
| + | bind-address = * | ||
| + | mysqlx-bind-address = * | ||
| + | #... | ||
| + | </code><code> | ||
| + | # service mysql restart | ||
| + | |||
| + | # mysql | ||
| + | </code><code> | ||
| + | SELECT User, Host FROM mysql.user; | ||
| + | SELECT User, Host FROM mysql.db; | ||
| + | |||
| + | UPDATE mysql.user SET Host='%' WHERE Host='localhost' AND User='asterisk'; | ||
| + | UPDATE mysql.db SET Host='%' WHERE Host='localhost' AND User='asterisk'; | ||
| + | |||
| + | FLUSH PRIVILEGES; | ||
| + | </code><code> | ||
| + | # mysql -h server.corp24.un -u asterisk -p asterisk | ||
| </code> | </code> | ||
| ===== Управление базами данных и пользователями ===== | ===== Управление базами данных и пользователями ===== | ||
| Line 111: | Line 161: | ||
| или | или | ||
| - | ubuntu# zcat /usr/share/doc/cacti/cacti.sql.gz | mysql -p cacti | + | ubuntu# zcat /usr/share/doc/cacti/cacti.sql.gz | mysql -p -v cacti |
| </code> | </code> | ||
| Line 144: | Line 194: | ||
| ===== adminer ===== | ===== adminer ===== | ||
| - | |||
| - | Попробовать | ||
| * [[https://www.adminer.org/]] | * [[https://www.adminer.org/]] | ||
| Line 151: | Line 199: | ||
| <code> | <code> | ||
| # apt install adminer | # apt install adminer | ||
| + | |||
| + | # cat /etc/apache2/sites-available/000-default.conf | ||
| + | </code><code> | ||
| + | ... | ||
| + | Alias /adminer /usr/share/adminer/adminer/ | ||
| + | ... | ||
| </code> | </code> | ||
| Line 163: | Line 217: | ||
| # less /etc/phpmyadmin/apache.conf | # less /etc/phpmyadmin/apache.conf | ||
| + | </code><code> | ||
| + | http://server.corpX.un/phpmyadmin | ||
| </code> | </code> | ||
| - | |||
| - | * http://server.corpX.un/phpmyadmin | ||
| - | |||
| ===== Управление сбоями ===== | ===== Управление сбоями ===== | ||
| - | * Можно в консоли сервера запустить mysqlcheck -r, он автоматически починит проблемные таблицы во всех базах. | ||
| * [[http://dev.mysql.com/doc/refman/5.1/en/show-processlist.html|SHOW PROCESSLIST Syntax]] | * [[http://dev.mysql.com/doc/refman/5.1/en/show-processlist.html|SHOW PROCESSLIST Syntax]] | ||
| + | |||
| + | <code> | ||
| + | 1. Настраиваем mysql на работу в режиме чтения | ||
| + | |||
| + | # nano /etc/my.cnf | ||
| + | ... | ||
| + | innodb_force_recovery=4 | ||
| + | ... | ||
| + | |||
| + | 2. Запускаем из командной строки | ||
| + | |||
| + | /usr/libexec/mysqld --skip-grant & | ||
| + | |||
| + | 3. Бекапим все базы данных | ||
| + | |||
| + | mysqldump --all-databases --add-drop-table > dumpfile.sql | ||
| + | |||
| + | 4. Останавливаем сервер | ||
| + | |||
| + | killall mysqld | ||
| + | |||
| + | 5. Убираем настройку работы в режиме чтения | ||
| + | |||
| + | nano /etc/my.cnf | ||
| + | ... | ||
| + | #innodb_force_recovery=4 | ||
| + | ... | ||
| + | |||
| + | 6. Удаляем/перемещаем каталог со старыми базами данных | ||
| + | |||
| + | mv /var/lib/mysql /var/lib/mysql_ | ||
| + | |||
| + | 7. Создаем новый каталог для баз данных с нужными правами | ||
| + | |||
| + | mkdir /var/lib/mysql/ | ||
| + | chown mysql:mysql /var/lib/mysql/ | ||
| + | |||
| + | 8. Создаем системные базы данных в новом каталоге | ||
| + | |||
| + | /usr/libexec/mysqld --initialize --user=mysql | ||
| + | |||
| + | 9. Запускаем сервис | ||
| + | |||
| + | /etc/init.d/mysqld start | ||
| + | 10. Восстанавливаем остальные базы данных из бекапа | ||
| + | |||
| + | mysql < dumpfile.sql | ||
| + | </code> | ||