Как открыть порт 3306 для mysql windows

Ручная установка MySQL на Windows

Автор: Max Bond
Дата записи

Когда автоматическая установка дает сбой, на помощь приходит ручной режим.

Приступаем к установке:

1. Качаем zip-архив MySQL со страницы загрузки: http://www.mysql.com/downloads/mysql/.

Для Win 32 выбираем дистрибутив: Windows (x86, 32-bit), Zip-Archive.

Для Win 64: Windows (x86, 64-bit), Zip-Archive.

После нажатия на кнопку Download вы увидите форму для регистрации, ее можно пропустить, нажав на ссылку внизу – No thanks, just take me to the downloads.

2. Создаем папку установки. Например C:\Program Files\MySQL\MySQL Server 5.5. И распаковываем в нее содержание архива таким образом, чтобы папки bin, data, docs и прочие были в корне папки установки.

3. Переходим к созданию конфигурационного файла (my.ini). За основу берем один из типовых файлов:

  • my-small.ini – подойдет тем, кто использует MySQL время от времени и не хочет, чтобы сервер занимал много ресурсов.
  • my-medium.ini – тоже не требовательная к ресурсам конфигурация, но подойдет тем, кто использует MySQL на постоянной основе (хороший выбор для для домашнего веб-сервера).
  • my-large.ini и my-huge.ini – для систем, использующихся как выделенный MySQL сервер. Впрочем, my-large.ini можно использовать для домашнего сервера, если нужна дополнительная производительность MySQL (512 Мб оперативной памяти не так уж и много по нынешним временам).
  • my-innodb-heavy-4G – для выделенных серверов, имеющих от 4 Гб оперативной памяти и использующих только таблицы типа InnoDB.

В этом примере за основу я выбрал my-medium.ini. Переименовываем его в my.ini и размещаем в корне папки установки (C:\Program Files\MySQL\MySQL Server 5.5).

Открываем для редактирования (в обычном Блокноте) и сразу после строчки [mysqld] дописываем два параметра:

Обратите внимание, что в путях используется прямой слэш (/), а не обратный (\).

basedir – это путь к папке установки.

datadir – путь к папке данных (где хранятся все БД). Иногда имеет смысл разместить данные на отдельном диске, чтобы повысить производительность или обеспечить надежность.

На всякий случай привожу фрагмент конфигурационного файла, после внесения изменений:

4. Следующий этап – добавить путь C:\Program Files\MySQL\MySQL Server 5.5\bin в переменную среды PATH, чтобы упростить запуск MySQL из командной строки. Для этого открываем Свойства системы -> Дополнительные параметры системы -> на закладке Дополнительно в самом низу кнопка “Переменные среды…”. В открывшемся окне пролистываем системные переменные пока не найдем Path. Выделяем эту строку и нажимаем “Изменить…”. В конце строки дописываем свой путь, сохраняя существующие параметры:

Меняем PATH

Обратите внимание, что пути разделяются точкой с запятой. Убедитесь, что в начале и в конце вашего пути точка с запятой поставлена.

5. Перед тем как осуществить пробный пуск, открываем входящий порт TCP 3306 в брандмауэре Windows:

Открываем порт TCP 3306

Если в системе установлен дополнительный брандмауэр, то в нем также необходимо открыть порт TCP 3306 для входящих подключений.

6. Теперь осуществляем тестовый запуск. В командной строке, запущенной от имени администратора (это обязательно, если на Семерке или Висте включен UAC), выполняем:

На экран будет выведено несколько строк. Если запуск прошел успешно, то последняя строка будет выглядеть примерно так:

Оставляем это окно открытым, и открываем еще одно окно командной строки, в котором вводим:

Если подключение прошло без ошибок, вы увидите приглашение командной строки: mysql>

Посмотрим какие базы у нас есть:

Точка с запятой в конце SQL-запроса ОБЯЗАТЕЛЬНА!

Командная строка MySQL

Теперь мы окончательно убеждены, что сервер работает.

7. Переходим к следующему этапу – необходимо установить пароль администратора MySQL (пользователь root). По умолчанию пароль не установлен, и это надо исправить. В том же окне MySQL вводим следующие команды:

Таблица users

Как видно на скриншоте колонка password заполнена, значит пароль установлен.

Перед выходом выполняем команду:

Теперь при подключении необходимо вводить пароль. Для этого используем ключ -p:

Для завершения работы MySQL выполняем:

Читайте также:  Daemon tools для windows 10 offline

8. Последний этап – запуск MySQL в качестве системной службы Windows.

Убедитесь, что в системе нет активных процессов MySQL.

В командной строке, запущенной от имени администратора, выполняем:

Путь к mysqld необходимо указывать полностью (даже если он прописан в PATH)!

Для запуска службы, открываем “Управление компьютером”, и вручную запускаем службу MySQL:

Запуск службы MySQL

Или проще через командную строку:

Для удаления службы, предварительно ее останавливаем:

Открытие порта 3306 (mysql) в VMBitrix и настройка удаленного доступа к БД

Иванов Иван

Дата последнего входа: более года назад

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

Показать скрытое содержимое

VMBitrix представляет собой образ линукса под VMWare с хорошо настроенным веб-сервером для оптимальной работы Битрикса, и она очень удобна как для разработки, так и для работы локальных сайтов (например корпоративного портала). Поэтому часто разработчикам требуется прямой доступ к mysql, особенно если они занимаются интеграцией проектов или разработкой своих модулей.

Для прямой работы с базой данных в арсенале Битрикса есть /bitrix/admin/sql.php. Многие для этой цели ставят phpmyadmin. Однако есть админ-клиенты, на мой взгляд, на порядок удобнее (особенно когда речь идет об innoDB с внешними ключами). Для их работы требуется подключение к mysql-серверу, которое по умолчанию (в конфигурации VMBitrix) закрыто.

(Примечание: «#» перед командой означает приглашение shell, «>» — mysql).

    Заходим в консоль, а оттуда — в mysql

# mysql
> use mysql;

Добавляем пользователя для удаленного доступа со всеми привилегиями. Для обеспечения большей безопасности надо указать явно хост и привилегии.

> insert into user set Host=’%’,User=’remote’,Password=PASSWORD(‘пароль’);
> grant all on *.* to ‘remote’@’%’;

Меняем пустой пароль root в mysql (по желанию, мера безопасности).

> update user set password=PASSWORD(‘пароль рута’) where user=’root’;
Если на виртуальной машине установлен Битрикс, который ходит в базу под рутом, то необходимо проставить в /bitrix/php_interface/dbconn.php новый пароль.

Выходим из mysql.

Открываем порт 3306 (mysql)
# iptables -I ufw-user-input 1 -p tcp —dport 3306 -j ACCEPT

Позволяем mysql принимать внешние соединения

# mc
Переходим в /etc/mysql/ , открываем my.cnf (F4)
Комментируем 68-ю строку решеткой: # bind-address = 127.0.0.1
Сохраняем (F10)

Выходим из mc и перегружаем демона mysql.

# exit
# /etc/init.d/mysql restart

  • Проверяем вход под юзером remote из внешнего mysql клиента
  • Открывая удаленный доступ, вы открываете потенциальную возможность утраты или кражи информации из базы данных, и действуете на свой страх и риск.

    Как открыть 3306 порт, debian 10?

    1.Установил MySQL сервер
    2. Добавил
    [mysqld]
    bind-address = 0.0.0.0

    3.Добавил правило в iptables
    iptables -A INPUT -p tcp —dport 3306 -j ACCEPT

    4. Создал пользователя:

    5.Перезапустил сервис mysql
    6.При попытке удаленного подключения к базе, выдаёт «unknown error», через telnet 3306 — нет ответа от сервера.

    Chain INPUT (policy ACCEPT)
    target prot opt source destination
    ACCEPT tcp — anywhere anywhere tcp dpt:telnet
    ACCEPT all — anywhere anywhere ctstate RELATED,ESTABLISHED
    ACCEPT all — anywhere anywhere
    INPUT_direct all — anywhere anywhere
    INPUT_ZONES_SOURCE all — anywhere anywhere
    INPUT_ZONES all — anywhere anywhere
    ACCEPT tcp — anywhere anywhere tcp dpt:mysql
    ACCEPT tcp — anywhere anywhere tcp dpt:http

    Chain FORWARD (policy ACCEPT)
    target prot opt source destination
    ACCEPT all — anywhere anywhere ctstate RELATED,ESTABLISHED
    ACCEPT all — anywhere anywhere
    FORWARD_direct all — anywhere anywhere
    FORWARD_IN_ZONES_SOURCE all — anywhere anywhere
    FORWARD_IN_ZONES all — anywhere anywhere
    FORWARD_OUT_ZONES_SOURCE all — anywhere anywhere
    FORWARD_OUT_ZONES all — anywhere anywhere
    DROP all — anywhere anywhere ctstate INVALID
    REJECT all — anywhere anywhere reject-with icmp-host-prohibited
    ufw-before-logging-forward all — anywhere anywhere
    ufw-before-forward all — anywhere anywhere
    ufw-after-forward all — anywhere anywhere
    ufw-after-logging-forward all — anywhere anywhere
    ufw-reject-forward all — anywhere anywhere
    ufw-track-forward all — anywhere anywhere

    Chain OUTPUT (policy ACCEPT)
    target prot opt source destination
    OUTPUT_direct all — anywhere anywhere
    ACCEPT tcp — anywhere anywhere tcp dpt:mysql

    Chain INPUT_direct (1 references)
    target prot opt source destination

    Chain INPUT_ZONES_SOURCE (1 references)
    target prot opt source destination

    Chain INPUT_ZONES (1 references)
    target prot opt source destination
    IN_public all — anywhere anywhere [goto]

    Читайте также:  Когда выйдет новое обновление для windows 10

    Chain FORWARD_direct (1 references)
    target prot opt source destination

    Chain FORWARD_IN_ZONES_SOURCE (1 references)
    target prot opt source destination

    Chain FORWARD_IN_ZONES (1 references)
    target prot opt source destination
    FWDI_public all — anywhere anywhere [goto]

    Chain FORWARD_OUT_ZONES_SOURCE (1 references)
    target prot opt source destination

    Chain FORWARD_OUT_ZONES (1 references)
    target prot opt source destination
    FWDO_public all — anywhere anywhere [goto]

    Chain OUTPUT_direct (1 references)
    target prot opt source destination

    Chain IN_public (1 references)
    target prot opt source destination
    IN_public_log all — anywhere anywhere
    IN_public_deny all — anywhere anywhere
    IN_public_allow all — anywhere anywhere
    ACCEPT icmp — anywhere anywhere

    Chain IN_public_log (1 references)
    target prot opt source destination

    Chain IN_public_deny (1 references)
    target prot opt source destination

    Chain IN_public_allow (1 references)
    target prot opt source destination
    ACCEPT tcp — anywhere anywhere tcp dpt:mysql ctstate NEW,UNTRACKED

    Chain FWDI_public (1 references)
    target prot opt source destination
    FWDI_public_log all — anywhere anywhere
    FWDI_public_deny all — anywhere anywhere
    FWDI_public_allow all — anywhere anywhere
    ACCEPT icmp — anywhere anywhere

    Chain FWDI_public_log (1 references)
    target prot opt source destination

    Chain FWDI_public_deny (1 references)
    target prot opt source destination

    Chain FWDI_public_allow (1 references)
    target prot opt source destination

    Chain FWDO_public (1 references)
    target prot opt source destination
    FWDO_public_log all — anywhere anywhere
    FWDO_public_deny all — anywhere anywhere
    FWDO_public_allow all — anywhere anywhere

    Chain FWDO_public_log (1 references)
    target prot opt source destination

    Chain FWDO_public_deny (1 references)
    target prot opt source destination

    Chain FWDO_public_allow (1 references)
    target prot opt source destination

    Chain ufw-before-logging-input (0 references)
    target prot opt source destination

    Chain ufw-before-logging-output (0 references)
    target prot opt source destination

    Chain ufw-before-logging-forward (1 references)
    target prot opt source destination

    Chain ufw-before-input (0 references)
    target prot opt source destination

    Chain ufw-before-output (0 references)
    target prot opt source destination

    Chain ufw-before-forward (1 references)
    target prot opt source destination

    Chain ufw-after-input (0 references)
    target prot opt source destination

    Chain ufw-after-output (0 references)
    target prot opt source destination

    Chain ufw-after-forward (1 references)
    target prot opt source destination

    Chain ufw-after-logging-input (0 references)
    target prot opt source destination

    Chain ufw-after-logging-output (0 references)
    target prot opt source destination

    Chain ufw-after-logging-forward (1 references)
    target prot opt source destination

    Chain ufw-reject-input (0 references)
    target prot opt source destination

    Chain ufw-reject-output (0 references)
    target prot opt source destination

    Chain ufw-reject-forward (1 references)
    target prot opt source destination

    Chain ufw-track-input (0 references)
    target prot opt source destination

    Chain ufw-track-output (0 references)
    target prot opt source destination

    Chain ufw-track-forward (1 references)
    target prot opt source destination

    Как удаленно подключиться к MySQL

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

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

    Подключение через панель управления TimeWeb

    Чтобы подключиться удаленно к MySQL, необходимо для начала открыть сайт хостинга и авторизоваться в личном кабинете. В панели управления следует выбрать раздел «Базы данных MySQL», через него и будем проводить операции. В новом открывшемся окне находим ссылку «Добавить доступ» напротив того сервера, к которому планируется подключиться. Для разрешения доступа к подсети /24 меняем последний актет IP-адреса на знак %.

    При установлении соединения используем имя сервера или его IP-адрес. Данная информация доступна на главной странице в разделе «Информация о сервере». Порт указываем 3306, имя пользователя будет тем же, что и название базы данных. Вводим пароль и устанавливаем соединение.

    phpMyAdmin

    phpMyAdmin – программное средство, предоставляющее веб-интерфейс для работы с сервером MySQL. Подключиться к базе можно, открыв раздел «Базы данных MySQL» в панели управления хостингом. Находим на странице ссылку «phpMyAdmin» и жмем по ней для подключения. Если она недоступна, значит, пользователем был превышен лимит доступных БД. Увеличить его можно сменой тарифа.

    Входим в данный раздел, вбиваем все данные и подключаемся.

    Соединение через SSH туннель

    Данный тип подключения считается более безопасным, потому что все данные по SSH-туннелю передаются в зашифрованном виде, исключая возможность перехвата.

    Читайте также:  Vpn google chrome windows

    Подключение в Windows

    В данной ОС соединение по SSH протоколу можно осуществить с помощью специальных программ для управления базами данных. Например, PuTTY (бесплатная программа) или SecureCRT (платное ПО, но с пробной версией на 30 дней).

    Мы для работы выбрали PuTTY. Скачиваем установщик с официального сайта и устанавливаем приложение . Запускаем программу, затем переходим в раздел «Session». В поле «Host Name» вводим свой домен или указываем его IP-адрес.

    Далее переходим в категорию «Connection», открываем вкладку «SSH», затем «Tunnels». В поле «Source Port» указываем значение 3306, в «Destination» вбиваем localhost:3306, потом жмем на кнопку «Add» для добавления порта в список. И только потом жмем кнопку «Open» для установления соединения с хостом.

    Логин и пароль те же самые, которые используются для входа в панель управления. При подключении используем имя пользователя и пароль, выданные при создании базы данных. Адрес сервера — 127.0.0.1, порт для подключения 3306.

    Предупреждаем, что если вы уже устанавливали сервер баз данных MySQL на своем компьютере, то соединение через порт 3306 будет недоступно. Надо будет указать другое значение, например 3307.

    Подключение в Linux

    В ОС Linux никакого дополнительного ПО устанавливать не придется, можно все провести через командную строку «Терминал». Перед тем как подключиться к MySQL удаленно, нужно создать SSH-туннель. Вводим вот такую команду:

    Потом в конфигурационном файле MySQL потребуется изменить параметр, отвечающий за удаленное подключение. Открываем в «Терминале» файл, дав вот такую команду:

    Далее комментируем нужную нам строку. В итоге она должна выглядеть вот таким образом:

    Сохраняем изменения, потом перезапускаем MySQL вот такой командой:

    Далее будет запрошен пароль для входа в панель управления хостингом, вводим его. Для подключения к удаленному серверу MySQL необходимо создать пользователя, и делается это вот такой командой:

    Так мы создадим пользователя с неограниченным доступом ко всем базам на указанном сервере. Потом проверяем подключение утилитой telnet. Если сервер запрос не отклонил, значит, пора приступать к подключению. Для этого можно задать команды вот таких типов:

    Как проверить соединение с базой данных MySQL

    Для проверки подключения к базе данных MySQL во всех ОС используем утилиту telnet. Нужно просто открыть командную строку и набрать в ней вот такую команду:

    Если соединение установится, то настройка туннеля прошла успешно, можно приступать к подключению. Если нет, рекомендуем тщательно проверить все настройки.

    Распространенные проблемы и ошибки при подключении к MySQL

    Как подключиться к MySQL удаленно, если возникают какие-то ошибки? Трудности обычно возникают при наличии запрещающих правил. Проверить, существуют ли такие, можно вот таким запросом:

    Если таковые обнаружатся, добавим разрешающее правило. Для этого надо ввести соответствующую команду, она должна выглядеть примерно вот так:

    Если при подключении возникает ошибка «Can’t connect to Mysql Server on ‘IP_адрес'(10061)» , соединение заблокировал брандмауэр, firewall, outpost, антивирус и прочие программы. Для UFW, инструмента брандмауэра в Ubuntu, можно задать вот такую команду, разрешающую доступ с любого IP-адреса:

    Есть еще возможность открыть доступ для определенного IP-адреса, и это куда более безопасный способ. Для этого потребуется ввести такой запрос:

    Если же появляется ошибка типа «Client does not support autentification protocol request by server; consider upgrading MySQL client» , это значит, что установленный клиент не поддерживает требуемый сервером протокол.

    Эту ошибку можно исправить, установив пароль старого формата:

    Если при проверке выходит ошибка формата «ERROR 2003 (HY000): Can’t connect to MySQL server» , это значит, что порт 3306 не открыт. Либо сервер MySQL не прослушивает указанный IP-адрес.

    В случае, когда выходит сообщение «ERROR 1130 (HY000): Host ‘10.8.0.5’ is not allowed to connect to this MySQL server» , указывается отсутствие прав доступа к удаленному серверу у пользователя.

    Ошибка «1045 невозможно подключиться к серверу MySQL» возникает при попытке подключиться удаленно к базам данных через phpMyAdmin. Причиной тому может быть неправильно введенный логин или же отсутствие пароля у пользователя или его неправильная смена.

    Заключение

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

    Оцените статью