Добро пожаловать в базу знаний

Базы данных

Адрес базы: localhost

Порт MySQL-сервера (по умолчанию): 3306

Имя пользователя базы данных, имя базы данных и пароль: задаются при создании базы

SLEEP-запросы в MySQL

Откуда беруться Sleep-запросы Sleep-запросы - соединения с базой, которые не закрылись, что приводит к достижению лимита подключения к MySQL - на шаге…
Откуда беруться Sleep-запросы
Sleep-запросы - соединения с базой, которые не закрылись, что приводит к достижению лимита подключения к MySQL - на шаге 6:
1. пользователь открывает страницу Вашего сайта
2. на сервер приходит запрос к Apache
3. Apache посылает запрос PHP
4. PHP подключается к MySQL
5. PHP направляет SQL-запрос в MySQL
6. MySQL выполняет запрос и отдает результат в PHP
7. PHP закрывает соединение с MySQL
8. PHP формирует контент и отдает его в Apache
9. Apache посылает ответ в браузер

Скрипт не завершает свою работу, и обычно причина:
- нехватка памяти. Решение: увеличиваем в биллинге в параметрах услуги;
- неправильная логика работы скрипта в результате которой получился бесконечный цикл.

Решение
Закрываем соединения по тайм-ауту с помощью параметров wait_timeout и interactive_timeout для текущей сессии. Пример:
<?php
mysql_connect('127.0.0.1:3351', 'root', '');
mysql_select_db('test');
mysql_query('set wait_timeout=1');
$result = mysql_query( 'SELECT * FROM table');

Есть и другие параметры:
+-------------+-----------+
| Variable_name | Value |
+-------------+-----------+
| connect_timeout | 10 |
| interactive_timeout | 28800 |
| net_read_timeout | 30 |
| net_write_timeout | 60 |
| wait_timeout | 28800 |
+------------+-----------+ 
Информация полезна?
0

Проверка, оптимизация и восстановление таблиц

Вы можете произвести проверку, оптимизацию и восстановление таблиц. Для этого есть соответствующие функции в PHPmyadmin:Заходите в PHPmyadmin - слева выбираете…

Вы можете произвести проверку, оптимизацию и восстановление таблиц. Для этого есть соответствующие функции в PHPmyadmin:
Заходите в PHPmyadmin - слева выбираете базу - вкладка "Структура" - под всеми таблицами "Отметить все" - далее в выпадающем списке " С отмеченными" выбираете необходимое действие.

repair.png

 

Альтернативный способ восстановления, например, в случае ошибки:

Table ‘./***/jos_session’ is marked as crashed and last (automatic?) repair failed SQL=INSERT INTO `jos_session`

Выполняется команда на вкладке SQL

REPAIR TABLE jos_session - восстановление таблицы с сессиями пользователей

TRUNCATE TABLE jos_session - полная очистка содержимого таблицы с сессиями пользователей

Подробнее о восстановлении jos_session -> тут

 

Что делать, если в панели управления ISPmanager появилось сообщение

"Во время проверки базы данных 'userXXXX_wp' были обнаружены таблицы имеющие тип InnoDB. Для их восстановления необходимо вмешательство администратора сервера."

При восстановлении через phpAdmin получаем сообщение: "The storage engine for the table doesn't support repair"

 

Панель не умеет проверять базы с таблицами InnoDB на ошибки.
Поэтому проверка и ремонт всех баз производится 1 раз в неделю автоматически или же Вы можете обратиться в Центр поддержки для проверки базы вручную с помощшью утилиты mysqlcheck для сопровождения и аварийного восстановления таблиц:
 
~# mysqlcheck -uroot -p --auto-repair --optimize  --databases userXXXX_wp
 
C различными опциями mysqlcheck можно ознакомиться -> тут
 

 

Информация полезна?
0

Размеры базы и ее дампа в зависимости от типа таблиц InnoDB или MyISAM

Почему дамп весит 4,6 Мб, а при импорте в MySQL 34 Мб ? # du -sh /var/www/user2483/data/user2483_rt99.sql4,6M /var/www/user2483/data/user2483_rt99.sql# du -sh /var/lib/mysql/user2483_rt9934M /var/lib/mysql/user2483_rt99Дамп базы данных…

Почему дамп весит 4,6 Мб, а при импорте в MySQL 34 Мб ?

# du -sh /var/www/user2483/data/user2483_rt99.sql
4,6M /var/www/user2483/data/user2483_rt99.sql
# du -sh /var/lib/mysql/user2483_rt99
34M /var/lib/mysql/user2483_rt99

Дамп базы данных - это файл с ее содержимым. Сам файл состоит из запросов на создание и вставку значений в таблицу, написанных на языке SQL. Соответсвенно его размер, как текстового файла, мал.

Размер базы при импорте дампа зависит от типа данных, содержащихся в данном текстовом файле, и итоговый размер импортированных таблиц из дампа занимает существенно больший объем на сервере, чем текстовый дамп.

Для примера, при импорте файла дампа 4,6 Мб с типом таблиц InnoDB размер таблицы wp_usermeta составляет 10,5 Мб. Если же в дампе сменить тип таблиц на MyISAM, то в результате импорта размер таблицы wp_usermeta составит 5.3 МБ. Соответсвенно и размер базы данных уменьшается в 2 раза. Почему так?

Потому что методы InnoDB и MyISAM используют разные механизмы хранения.
MyISAM: Индексы в ключевом буфере ( размер буфера key_buffer_size задается в файле конфигурации mysql), данные - в файле системного кеша (на диске)
InnoDB: Индекс хранится вместе с данными в одном файле при этом для кеширвания используется пул буферов. Поэтому базы с InnoDB весят больше. Однако сам MySQL новых версий по умолчанию рекомендует использовать InnoDB, так как при прочих равных он дает выше скорость и больше возможностей при частой модификации таблиц.

Еще один плюс в пользу InnoDB - в отличие от MyISAM, данный тип при нагруженном одновременном чтении и записи не приводит к их блокировке. Подробнее об этом в статье: https://blog.cishost.ru/tag/innodb/

Для проверки, оптимизации и восстановления таблиц воспользуйтесь -> инструкцией 
Подробнее о разнице между InnoDB и MyISAM здесь: https://russianblogs.com/article/2230976542/

Информация полезна?
0

Adminer и HeidiSQL - альтернативы PhpMyAdmin

Adminer - альтернатива PhpMyAdmin на shared-хостинге1) Заливаем файл adminer-4.8.1.php в корневой каталог сайта /www/имя_сайта2) Переходим по ссылке http://имя-сайта.рф/adminer-4.8.1.php3) Указываем данные доступа к…

Adminer - альтернатива PhpMyAdmin на shared-хостинге
1) Заливаем файл adminer-4.8.1.php в корневой каталог сайта /www/имя_сайта
2) Переходим по ссылке http://имя-сайта.рф/adminer-4.8.1.php
3) Указываем данные доступа к базе (phpmyadmin) -> инструкция по созданию базы

name-sql.png
4) Производим необходимые действия с таблицами.
Достоинство данного метода работы с базой - отображение ошибок, в случае их наличия, в панели управления - "Журнал" - error.log

А для VDS с root-доступом, в качестве альтернативы PhpMyAdmin можно воспользоваться HeidiSQLhttps://www.heidisql.com/ - инструмент администрирования баз данных с открытым исходным кодом для MariaDB, MySQL, а также Microsoft SQL Server, PostgreSQL и SQLite, устанавливаемый на Windows.

KLD-5vY0k2I.jpgSR9U6MZNJA4.jpg

Информация полезна?
0

Как экспортировать базу

Экспорт таблицы или всей базы может пригодиться для сохранения резервной копии перед внесением каких-либо изменений в базу, копировании в другую…

Экспорт таблицы или всей базы может пригодиться для сохранения резервной копии перед внесением каких-либо изменений в базу, копировании в другую базу или переносе на другой хостинг.

Чтобы сохранить базу данных в виде файла, включающего в себя содержимое базы данных - дампа, необходимо выполнить операцию экспорта через PhpMyAdmin.

1. Заходим в PhpMyAdmin/, инструкция -> тут.

2. Слева выбираем базу, справа - вкладку "Экспорт".

3. Далее выбираем метод экспорта:

- Быстрый - отображать минимум настроек - для скачки базы целиком без сжатия

export1.png

- Обычный - отображать все возможные настройки - где можно выбрать конкретную таблицу для скачки и выбрать способ архивации

export2.png

4. После выбора параметров дампа нажимаем "Вперед", для завершения скачки файла на компьютер.

Дальнейший импорт базы выполняется по -> инструкции.

Информация полезна?
0

Как импортировать базу

Если Вы переносите базу данных к нам с Вашего ПК или другого хостинга, то необходимо выполнить импорт дампа .sql Для…

Если Вы переносите базу данных к нам с Вашего ПК или другого хостинга, то необходимо выполнить импорт дампа .sql

Для этого после создания базы и перехода в phpmyadmin в левой колонке кликаем по базе (в нашем примере это demo_baza1 ), справа открываем вкладку "Импорт"

bd-import.png

 

При импорте обычно достаточно выбрать сам файл *.sql или запакованный *.sql.zip , остальные параметры можно оставить по умолчнанию.

В некоторых случаях можно снять галочку разрешающую частичный импорта, если возникает ошибка при импорте базы, содержащей таблицы с большими данными.

 

owndns5

Наши таблицы загружены в базу данных, создание базы данных и импорт существующих данных закончен

 owndns7

 

Обратите внимание на то, что при установке web-скрипта процедуру импорта базы данных производить не нужно. Обычно скрипт сам импортирует базу данных, Вам достаточно указать при установке данные: Хост(сервер): localhost Имя пользователя базы данных, имя базы данных и пароль. Порт MySQL-сервера по умолчанию 3306.

Информация полезна?
0

Как зайти в PhpMyAdmin

После создания базы, для работы с ней используем приложение PhpMyAdmin Есть несколько способов перехода в PhpMyAdmin:1) Через Панель управления - блок…

После создания базы, для работы с ней используем приложение PhpMyAdmin

Есть несколько способов перехода в PhpMyAdmin:
1) Через Панель управления - блок "Доп. приложения" - меню PhpMyAdmin

2) По ссылке: https://адрес-панели:1500/myadmin/

3) Указав имя домена: http://имя_домена.ru/myadmin/

 

 phpmyadmin1.png

 

Заходим в PhpMyAdmin, используя имя созданного пользователя базы данных и его пароль:

phpmyadmin.png

Для дальнейшей работы с таблицами базы в левой колонке выбираем базу, после чего справа появится возможность просматривать таблицы, редактировать содержимое базы, выполнять SQL запросы, осуществлять резервное копирование (экспорт дампа базы) и импортировать (восстанавливать) имеющиеся дампы баз.

Информация полезна?
0

Как создать базу данных

1. Необходимо перейти в панель управления,в раздел "Базы данных" и нажать на кнопку "Создать" для добавления новой базы    …

1. Необходимо перейти в панель управления,в раздел "Базы данных" и нажать на кнопку "Создать" для добавления новой базы

 

 

2. Заполняем имя базы, имя пользователя, указываем пароль, подтверждаем указанные данные кнопкой "ОК" 

 

owndns2

 

3. База данных создана, далее из-за особенности работы панели на последнем шаге нажимаем "Отмену" и обновляем страницу с базами

base-cancel.png

 

Обратите внимание на появившийся префикс userXXXX_ перед именем пользователя и именем базы

base-userprefix.png

 

4. Теперь можно переходить к работе с PhpMyAdmin.

Информация полезна?
1