- Устраняем типичные ошибки в MySQL
- Не удаётся подключиться к локальному серверу
- Не удаётся подключиться к серверу MySQL
- Ошибки запрета доступа в MySQL
- Потеря соединения с сервером MySQL
- Слишком много подключений
- Недостаточно памяти
- MySQL продолжает «падать»
- Заключение
- Форум
- Ошибка запуска в Windows 10
- Ошибка запуска в Windows 10
- Форум пользователей MySQL
- #1 17.03.2019 17:42:44
- Не удалось запустить MySQL-8.0-x64
- #2 17.03.2019 17:45:00
- Re: Не удалось запустить MySQL-8.0-x64
- #3 17.03.2019 17:58:07
- Re: Не удалось запустить MySQL-8.0-x64
- #4 17.03.2019 18:24:39
- Re: Не удалось запустить MySQL-8.0-x64
- OpenServer не запускается: решение популярных ошибок
- Просмотр логов OpenServer
- Запуск программы от имени администратора
- Редактирование файла hosts
- Невозможно подключиться к серверу
- Способ 1: Редактирование MySQL и phpMyAdmin
- Способ 2: Проверка данных авторизации
Устраняем типичные ошибки в MySQL
MySQL — система управления базами данных (СУБД) с открытым исходным кодом от компании Oracle. Она была разработана и оптимизирована специально для работы веб-приложений. MySQL является неотъемлемой частью таких веб-сервисов, как Facebook, Twitter, Wikipedia, YouTube и многих других.
Эта статья расскажет, как определять, с чем связаны частые ошибки на сервере MySQL, и устранять их.
Не удаётся подключиться к локальному серверу
Одной из распространённых ошибок подключения клиента к серверу является «ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)».
Эта ошибка означает, что на хосте не запущен сервер MySQL ( mysqld ) или вы указали неправильное имя файла сокета Unix или порт TCP/IP при попытке подключения.
Убедитесь, что сервер работает. Проверьте процесс с именем mysqld на хосте сервера, используя команды ps или grep, как показано ниже.
Если эти команды не показывают выходных данных, то сервер БД не работает. Поэтому клиент не может подключиться к нему. Чтобы запустить сервер, выполните команду systemctl.
Чтобы проверить состояние службы MySQL, используйте следующую команду:
Если в результате выполнения команды произошла ошибка службы MySQL, вы можете попробовать перезапустить службу и ещё раз проверить её состояние.
Если сервер работает (как показано) и вы по-прежнему видите эту ошибку, вам следует проверить, не заблокирован ли порт TCP/IP брандмауэром или любой другой службой блокировки портов.
Tproger , Москва, можно удалённо , От 80 000 до 250 000 ₽
Для поиска порта, который прослушивается сервером, используйте команду netstat .
Не удаётся подключиться к серверу MySQL
Ещё одна похожая и часто встречающаяся ошибка подключения — «(2003) Can’t connect to MySQL server on ‘server’ (10061)». Это означает, что в сетевом соединении было отказано.
Следует проверить, работает ли в системе сервер MySQL (смотрите выше) и на тот ли порт вы подключаетесь (как найти порт, можно посмотреть выше).
Похожие частые ошибки, с которыми вы можете столкнуться при попытке подключиться к серверу MySQL:
Ошибки запрета доступа в MySQL
В MySQL учётная запись (УЗ) определяется именем пользователя и клиентским хостом, с которого пользователь может подключиться. УЗ может также иметь данные для аутентификации (например, пароль).
Причин для запрета доступа может быть много. Одна из них связана с учётными записями MySQL, которые сервер разрешает использовать клиентским программам при подключении. Это означает, что имя пользователя, указанное в соединении, может не иметь прав доступа к базе данных.
В MySQL есть возможность создавать учётные записи, позволяющие пользователям клиентских программ подключаться к серверу и получать доступ к данным. Поэтому при ошибке доступа проверьте разрешение УЗ на подключение к серверу через клиентскую программу.
Увидеть разрешённые привилегии учётной записи можно, выполнив в консоли команду SHOW GRANTS
Входим в консоль (пример для Unix, для Windows консоль можно найти в стартовом меню):
В консоли вводим команду:
Дать привилегии конкретному пользователю в БД по IP-адресу можно, используя следующие команды:
Ошибки запрещённого доступа могут также возникнуть из-за проблем с подключением к MySQL (см. выше).
Потеря соединения с сервером MySQL
С этой ошибкой можно столкнуться по одной из следующих причин:
- плохое сетевое соединение;
- истекло время ожидания соединения;
- размер BLOB больше, чем max_allowed_packet .
В первом случае убедитесь, что у вас стабильное сетевое подключение (особенно, если подключаетесь удалённо).
Если проблема с тайм-аутом соединения (особенно при первоначальном соединении MySQL с сервером), увеличьте значение параметра connect_timeout .
В случае с размером BLOB нужно установить более высокое значение для max_allowed_packet в файле конфигурации /etc/my.cnf в разделах [mysqld] или [client] как показано ниже.
Если файл конфигурации недоступен, это значение можно установить с помощью следующей команды.
Слишком много подключений
Эта ошибка означает, что все доступные соединения используются клиентскими программами. Количество соединений (по умолчанию 151) контролируется системной переменной max_connections . Устранить проблему можно, увеличив значение переменной в файле конфигурации /etc/my.cnf .
Недостаточно памяти
Если такая ошибка возникла, это может означать, что в MySQL недостаточно памяти для хранения всего результата запроса.
Сначала нужно убедиться, что запрос правильный. Если это так, то нужно выполнить одно из следующих действий:
- если клиент MySQL используется напрямую, запустите его с ключом —quick switch , чтобы отключить кешированные результаты;
- если вы используете драйвер MyODBC, пользовательский интерфейс (UI) имеет расширенную вкладку с опциями. Отметьте галочкой «Do not cache result» (не кешировать результат).
Также может помочь MySQL Tuner. Это полезный скрипт, который подключается к работающему серверу MySQL и даёт рекомендации по настройке для более высокой производительности.
MySQL продолжает «падать»
Если такая проблема возникает, необходимо выяснить, заключается она в сервере или в клиенте. Обратите внимание, что многие сбои сервера вызваны повреждёнными файлами данных или индексными файлами.
Вы можете проверить состояние сервера, чтобы определить, как долго он работал.
Чтобы узнать время безотказной работы сервера, запустите команду mysqladmin .
Кроме того, можно остановить сервер, сделать отладку MySQL и снова запустить службу. Для отображения статистики процессов MySQL во время выполнения других процессов откройте окно командной строки и введите следующее:
Заключение
Самое важное при диагностике — понять, что именно вызвало ошибку. Следующие шаги помогут вам в этом:
- Первый и самый важный шаг — просмотреть журналы MySQL, которые хранятся в каталоге /var/log/mysql/ . Вы можете использовать утилиты командной строки вроде tail для чтения файлов журнала.
- Если служба MySQL не запускается, проверьте её состояние с помощью systemctl . Или используйте команду journalctl (с флагом -xe ) в systemd.
- Вы также можете проверить файл системного журнала (например, /var/log/messages ) на предмет обнаружения ошибок.
- Попробуйте использовать такие инструменты, как Mytop, glances, top, ps или htop, чтобы проверить, какая программа использует весь ресурс процессора или блокирует машину. Они также помогут определить нехватку памяти, дискового пространства, файловых дескрипторов или какого-либо другого важного ресурса.
- Если проблема в каком-либо процессе, можно попытаться его принудительно остановить, а затем запустить (при необходимости).
- Если вы уверены, что проблемы именно на стороне сервера, можете выполнить команды: mysqladmin -u root ping или mysqladmin -u root processlist , чтобы получить от него ответ.
- Если при подключении проблема не связана с сервером, проверьте, нормально ли работает клиент. Попробуйте получить какие-либо его выходные данные для устранения неполадок.
Форум
Ошибка запуска в Windows 10
Ошибка запуска в Windows 10
Непрочитанное сообщение Пётр » 25 фев 2015, 01:40
OpenServer не запускается в Windows 10, в логан написано почему:
main:
Начало процедуры запуска сервера
Создание виртуального диска
Обновление Hosts файла
Обновление конфигурации MySQL-5.5
Обновление конфигурации Sendmail
Обновление конфигурации PHP-5.3
Обновление конфигурации PHPMyAdmin
Обновление конфигурации Apache-2.2
Запуск MySQL-5.5
Запуск Apache-2.2
Проверка состояния сервера
Не удалось запустить MySQL-5.5
Сбой запуска!
[Note] Plugin ‘FEDERATED’ is disabled.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use Windows interlocked functions
InnoDB: Compressed tables use zlib 1.2.3
InnoDB: Initializing buffer pool, size = 20.0M
InnoDB: Completed initialization of buffer pool
InnoDB: highest supported file format is Barracuda.
InnoDB: Waiting for the background threads to start
InnoDB: 5.5.38 started; log sequence number 38583643
[Note] Recovering after a crash using mysql-bin
[Note] Starting crash recovery.
[Note] Crash recovery finished.
[Note] Server hostname (bind-address): ‘127.0.0.1’; port: 3306
[Note] — ‘127.0.0.1’ resolves to ‘127.0.0.1’;
[Note] Server socket created on IP: ‘127.0.0.1’.
[Note] Event Scheduler: Loaded 0 events
[Note] Z:\modules\database\MySQL-5.5\bin\mysqld.exe: ready for connections.
Версия OpenServer 5.1.1
В чем может быть проблема и как её исправить?
Форум пользователей MySQL
Задавайте вопросы, мы ответим
Страниц: 1
#1 17.03.2019 17:42:44
Не удалось запустить MySQL-8.0-x64
Доброго здравия форумчане!
При запуске OpenServer’a возникла такая проблема:
2019-03-17 17:39:45 ———————————————
2019-03-17 17:39:45 Начало процедуры запуска сервера
2019-03-17 17:39:46 Обновление Hosts файла
2019-03-17 17:39:46 Обновление конфигурации MySQL-8.0-x64
2019-03-17 17:39:46 Обновление конфигурации Sendmail
2019-03-17 17:39:46 Обновление конфигурации PHP-7.2
2019-03-17 17:39:46 Обновление конфигурации PHPMyAdmin
2019-03-17 17:39:46 Обновление конфигурации Apache-PHP-7
2019-03-17 17:39:46 Запуск MySQL-8.0-x64
2019-03-17 17:39:46 Запуск Apache-PHP-7
2019-03-17 17:39:46 Проверка состояния сервера
2019-03-17 17:40:32 Не удалось запустить MySQL-8.0-x64
2019-03-17 17:40:32 Сбой запуска!
2019-03-17 17:40:32 ———————————————
2019-03-17 17:40:32 Начало процедуры остановки сервера
2019-03-17 17:40:32 Остановка системных модулей
2019-03-17 17:40:33 Отключение виртуального диска
2019-03-17 17:40:33 Сервер успешно остановлен за 0,969 секунд!
В MySQL откладке прописано:
mysqld: [ERROR] Found option without preceding group in config file d:\ospanel\modules\database\MySQL-8.0-x64\my.ini at line 1!
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!
Что с этим делать?
Подскажите пожалуйста.
#2 17.03.2019 17:45:00
Re: Не удалось запустить MySQL-8.0-x64
#3 17.03.2019 17:58:07
Re: Не удалось запустить MySQL-8.0-x64
см d:\ospanel\modules\database\MySQL-8.0-x64\my.ini
есть ли там в начале записи не относящиеся к какой-либо секции?
возможно файл содержит BOM-маркер, тогда нужно открыть дамп в текстовом редакторе (например, Notepad++) и сохранить без BOM.
#4 17.03.2019 18:24:39
Re: Не удалось запустить MySQL-8.0-x64
В mi.ini прописано:
#
# ВНИМАНИЕ! Это временный файл, его редактирование бессмысленно!
#
[client]
port = 3306
character-sets-dir = «d:\\ospanel\\modules\\database\\MySQL-8.0-x64\\share\\charsets»
[mysqld]
skip-character-set-client-handshake
skip-name-resolve
sql-mode=»STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION»
#general_log = 1
#general_log_file = «d:\\ospanel\\userdata\\logs\\MySQL-8.0-x64_queries.log»
back_log = 100
basedir = «d:\\ospanel\\modules\\database\\MySQL-8.0-x64»
bind-address = 127.0.0.1
binlog_row_event_max_size=8K
bulk_insert_buffer_size = 2M
character-set-server=utf8
character-sets-dir = «d:\\ospanel\\modules\\database\\MySQL-8.0-x64\\share\\charsets»
collation-server=utf8_general_ci
connect_timeout = 5
datadir = «d:\\ospanel\\userdata\\MySQL-8.0-x64»
default-storage-engine=InnoDB
explicit_defaults_for_timestamp = TRUE
flush_time=0
ft_min_word_len=4
init-connect=»SET NAMES utf8″
interactive_timeout=30
join_buffer_size = 1M
key_buffer_size = 25M
local-infile=0
skip-log-bin
log-error = «d:\\ospanel\\userdata\\logs\\MySQL-8.0-x64_error.log»
max_allowed_packet = 32M
max_connect_errors = 10
max_connections = 30
max_heap_table_size = 25M
myisam-recover-options=backup,force
myisam_max_sort_file_size = 256M
myisam_repair_threads = 1
open_files_limit=4110
pid_file = «d:\\ospanel\\userdata\\temp\\mysql.pid»
port = 3306
default_authentication_plugin = mysql_native_password
read_buffer_size=2M
read_rnd_buffer_size=4M
secure-file-priv = «d:\\ospanel\\userdata\\temp»
server-id = 1
skip-external-locking
skip-innodb_adaptive_hash_index
sort_buffer_size = 1M
ssl-cert=»d:\\ospanel\\userdata\\config\\cert_files\\server.crt»
ssl-key=»d:\\ospanel\\userdata\\config\\cert_files\\server.key»
table_definition_cache = 400
table_open_cache = 400
thread_cache_size = 4
tmp_table_size = 25M
tmpdir = «d:\\ospanel\\userdata\\temp»
transaction-isolation = READ-COMMITTED
wait_timeout=60
innodb_fast_shutdown
innodb_file_per_table = 1
innodb_force_recovery=1
skip-innodb_doublewrite
innodb_buffer_pool_instances=1
innodb_buffer_pool_size = 128M
innodb_checksum_algorithm=0
innodb_concurrency_tickets=5000
innodb_data_file_path = ibdata1:10M:autoextend
innodb_data_home_dir = «d:\\ospanel\\userdata\\MySQL-8.0-x64»
innodb_flush_log_at_trx_commit = 2
innodb_lock_wait_timeout = 30
innodb_log_buffer_size = 1M
innodb_log_file_size = 64M
innodb_log_files_in_group = 2
innodb_max_dirty_pages_pct = 90
innodb_old_blocks_time=1000
innodb_read_io_threads = 8
innodb_stats_on_metadata=0
innodb_thread_concurrency=4
innodb_write_io_threads = 8
[myisamchk]
key_buffer_size = 50M
sort_buffer_size = 50M
read_buffer = 8M
write_buffer = 8M
OpenServer не запускается: решение популярных ошибок
Локальный веб-сервер OpenServer не всегда работает корректно, особенно когда речь идет о его первом запуске после установки на компьютер. Часто пользователи сталкиваются с различными проблемами, приводящими к отсутствию отклика при запуске программы.
Далее я расскажу, как быстро избавиться от распространенных трудностей при работе с данным инструментом.
Просмотр логов OpenServer
Начну с небольшого совета, который чаще всего помогает сразу же распознать причину неполадки и решить ее, приложив минимальное количество усилий. Однако уточню, что подойдет эта рекомендация только в том случае, если сам OpenServer запускается в Windows, но при этом старта локального веб-сервера не происходит.
На панели задач есть значок программы, по которому нужно кликнуть правой кнопкой мыши. После этого появится контекстное меню, в котором надо нажать на «Просмотр логов» . В новом окне ознакомьтесь с полученными сведениями и определите, из-за чего появилась рассматриваемая ошибка.
Запуск программы от имени администратора
Как бы банально это ни звучало, но часто запуск OpenServer от имени администратора решает все неполадки. Дело в том, что сам компонент тесно связан с сетью и файлами, отвечающими за соединение, поэтому и требует определенных привилегий при взаимодействии с ними. Если права доступа отсутствуют, соответственно, и запуска программы не произойдет.
Вам понадобится выйти из панели управления, найти файл программы в корневом каталоге, щелкнуть по нему правой кнопкой мыши и в контекстном меню выбрать пункт «Запуск от имени администратора» . Подождите несколько секунд и проверьте, появилась ли на экране какая-либо информация, свидетельствующая о начале работы локального веб-сервера.
Если этот метод оказался эффективным, но вы не хотите каждый раз запускать программу таким образом, выполните простую настройку. Для этого снова кликните по исполняемому файлу правой кнопкой мыши и перейдите в «Свойства» . Там найдите вкладку «Совместимость» и установите галочку возле пункта «Запускать эту программу от имени администратора» .
После применения настроек софт всегда будет стартовать с повышенными привилегиями, что позволит избавиться от проблем с запуском.
Редактирование файла hosts
Встроенный в операционную систему файл hosts выполняет важную роль, и часто пользователи задействуют его, если хотят ограничить доступ к конкретным сайтам. Иногда его блокировка средствами Windows становится причиной проблем с запуском OpenServer. Информация об этом появляется в логах при попытке перейти на веб-сервер, поэтому причину можно сразу же распознать.
Хочу дать два совета:
- При использовании стороннего антивируса и брандмауэра настройте их так, чтобы OpenServer не попадал в список заблокированных программ. Стандартные средства можно отключить на время исключительно в качестве проверки.
- Запустите командную строку от имени администратора и введите команду attrib -s -r -h -a C:\Windows\system32\drivers\etc\hosts , активировав соответствующие атрибуты для упомянутого файла hosts.
Невозможно подключиться к серверу
Если же OpenServer запускается нормально, но при этом соединения с сервером не происходит, советую ознакомиться с дальнейшими инструкциями.
Способ 1: Редактирование MySQL и phpMyAdmin
Этот способ подойдет тем пользователям, которые используют OpenServer в связке с MySQL и phpMyAdmin. Он заключается в небольшой настройке этих двух компонентов для обеспечения нормального соединения, если вдруг возникла такая ситуация, что веб-сервер не хочет запускаться.
Первоочередная задача – создание нового пользователя MySQL. Вводим:
Команда отвечает за создание нового пользователя и установку для него пароля.
Откройте конфигурационный файл phpMyAdmin, который находится в папке /etc/phpmyadmin/config.inc.php . Добавьте туда две строки:
Вместо user и pass подставьте имя созданного пользователя и его пароль для MySQL.
Способ 2: Проверка данных авторизации
Последняя рекомендация будет самой банальной – проверка данных авторизации при входе на веб-сервер. Это касается ситуаций, когда на экране появляется ошибка «Невозможно подключиться к серверу MySQL mysqli::real_connect(): (HY000/1045): Access denied for user ‘root’@’localhost’ (using password: NO)» . Вам необходимо указать стандартный пароль и логин mysql или root в обоих полях, после чего авторизация должна пройти успешно.
Это были самые распространенные способы решения проблем с запуском OpenServer.