User Tools

Site Tools


сервис_mysql

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
сервис_mysql [2018/04/26 13:47]
val [phpmyadmin]
сервис_mysql [2021/10/12 10:28] (current)
val [Debian/Ubuntu]
Line 6: Line 6:
  
   * на все вопросы о пароле пользователя root нажимаем "​Enter"​   * на все вопросы о пароле пользователя root нажимаем "​Enter"​
 +  * ставится 3-4 минуты
  
 <​code>​ <​code>​
-root@server:~# apt install mysql-server+debian10_11#​ apt install default-mysql-server 
 + 
 +server# apt install mysql-server
 </​code>​ </​code>​
  
Line 44: Line 47:
 </​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 55: Line 80:
 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 75: Line 100:
 ==== Из командной строки ==== ==== Из командной строки ====
 <​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>​ </​code>​
 ===== Управление базами данных и пользователями ===== ===== Управление базами данных и пользователями =====
Line 139: Line 164:
 general-log-file=/​var/​log/​mysql/​q.log general-log-file=/​var/​log/​mysql/​q.log
 log-output=file log-output=file
 +...
 +</​code>​
 +
 +===== adminer =====
 +
 +  * [[https://​www.adminer.org/​]]
 +
 +<​code>​
 +# apt install adminer
 +
 +# cat /​etc/​apache2/​sites-available/​000-default.conf
 +</​code><​code>​
 +...
 +        Alias /adminer /​usr/​share/​adminer/​adminer/​
 ... ...
 </​code>​ </​code>​
Line 152: Line 191:
  
 # 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>​
сервис_mysql.1524739671.txt.gz · Last modified: 2018/04/26 13:47 by val