Подключение к mysql на виртуальной машине
Как подключиться к серверу Mysql внутри VirtualBox Vagrant?
Я установил новую машину VirtualBox с Vagrant,и внутри этой виртуальной машины я установил сервер Mysql. Как я могу подключиться к этому серверу за пределами виртуальной машины? Я уже пересылаю порт 3306 Vagrantfile, но когда я пытаюсь подключиться к серверу mysql, это resposts с ошибкой: «чтение исходного пакета связи»
7 ответов
убедитесь, что MySQL привязывается к 0.0.0.0, а не 127.0.0.1, или он не будет доступен извне машины
Если вы делаете это на рабочем сервере, вы хотите знать о последствиях для безопасности, обсуждаемых здесь: https://serverfault.com/questions/257513/how-bad-is-setting-mysqls-bind-address-to-0-0-0-0
затем: sudo nano /etc/mysql/my.cnf и прокомментируйте следующие строки с помощью #
затем: sudo service mysql restart
затем вы можете подключиться через SSH к вашему серверу MySQL.
для тех, кто пытается сделать это с помощью MySQL workbench или sequel pro, это входные данные:
Я недавно столкнулся с этой проблемой. Я использовал PuPHPet для создания конфигурации.
чтобы подключиться к MySQL через SSH, пароль «vagrant» не работал для меня, вместо этого мне пришлось аутентифицироваться через ключевой файл SSH.
для подключения к MySQL Workbench
стандартный TCP / IP через SSH
Ну, так как ни один из приведенных ответов не помог мне, мне пришлось искать больше и найти решение в этой статьи.
и ответ в двух словах следующий:
подключение к MySQL с помощью MySQL Workbench
используя данный подход, я смог подключиться к базе данных mysql в vagrant с хоста Ubuntu, используя MySQL Workbench, а также используя Valentina Studio.
вот шаги, которые работали для меня после входа в поле:
найдите файл конфигурации MySQL:
на Ubuntu 16, путь обычно /etc/mysql/mysql.conf.d/mysqld.cnf
изменить файл конфигурации для привязки-адрес:
если он существует, измените значение следующим образом. Если он не существует, добавьте его в любом месте в разделе [mysqld].
сохраните изменения в конфигурационном файле и перезапустите служба MySQL.
создать / предоставить доступ пользователю к базе данных:
подключиться к базе данных MySQL как пользователь root и выполните следующие команды SQL:
Русские Блоги
Установка виртуальной машины Ubuntu и настройка MySQL для удаленного доступа подробный процесс
Установка виртуальной машины Ubuntu и настройка MySQL для удаленного доступа подробный процесс
1. Подготовка и установка виртуальной машины
! Меры предосторожности
Явление, которое легко увидеть здесь, заключается в том, что после установки различное программное обеспечение или системы могут выбрать только 32-разрядную установку, как показано на следующем рисунке:
Поэтому, чтобы избежать вышеуказанного явления, перед установкой введите настройки BIOS компьютера (на компьютере Lenovo нажмите F2 при включении компьютера для входа в настройки BIOS), выберите [Безопасность] à [Виртуализация] и выберите [Включить]. Вы можете обратиться к следующему рисунку:
2. Установите Ubuntu на виртуальную машину
Загрузите систему ubuntu, которую вы хотите установить, откройте Oracle VM VirtualBox, вы можете изменить место установки виртуальной системы в строке меню [Admin] à [Global Settings] à [General], по умолчанию это диск C
Нажмите [Создать] в строке меню, установите имя виртуального компьютера, выберите тип и версию системы, как показано ниже,
После этого нажмите [Далее], чтобы создать виртуальный жесткий диск, используйте выбор по умолчанию (VDI (образ диска VirtualBox)), сохраните его на физическом жестком диске и выберите динамическое распределение размера (размер 10 ГБ, можно), процесс установки по умолчанию: жестяная банка.
Дополнение: Эта часть процесса также может быть упомянута подробно:https://blog.csdn.net/qq_26587339/article/details/81430201 Приступить.
! После установки системы проверьте, можете ли вы выходить в интернет
3. Установите mysql на виртуальную машину Ubuntu
Установка mysql в Ubuntu очень проста и может быть завершена всего несколькими командами.
1. sudo apt-get install mysql-server
2. sudo apt-get install mysql-client
3. sudo apt-get install libmysqlclient-dev
В процессе установки вам будет предложено установить пароль или что-то еще. Будьте внимательны, чтобы не забыть настройку. После завершения установки вы можете использовать следующую команду, чтобы проверить, была ли установка успешной:
После проверки вышеупомянутых команд, если вы видите сокет с mysql в состоянии прослушивания, это означает, что установка прошла успешно. Как показано ниже:
Войдите в базу данных mysql с помощью следующей команды:
Чтобы выйти из карты данных mysql, вы можете использовать команду:
exit;
4. Связанная конфигурация mysql на Ubuntu на виртуальной машине
4.1 Настройка дистанционного управления mysql
Теперь установите mysql для разрешения удаленного доступа, вам нужно отредактировать каталог: /etc/mysql/mysql.conf.d file: mysqld.cnf, выполните следующую команду для редактирования файла:
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
После ввода файла конфигурации, Закомментировать: bind-address = 127.0.0.1, как показано на следующем рисунке:
Затем нажмите [esc], затем введите [: wq], чтобы сохранить И выйти из режима редактирования 。
! нота: если нет vim, можешь использовать:
Скачивать. Детали следующие:
дополнение: vim Краткое описание команды: После открытия файла нажмите на букву i Вы можете войти в режим редактирования файла, esc Выйти из режима редактирования, :wq Сохраните и выйдите из файла.
4.2 Войдите в службу Mysql, чтобы запустить службу базы данных удаленного подключения
Добавлено: используйте точку с запятой для окончания имени в среде службы MySQL и нажмите Enter
$ mysql –u root –p
Выполните приведенную выше команду, появится следующий рисунок, указывающий на успешную установку mysql.
Следующим шагом является запуск службы базы данных удаленного подключения. В среде mysql, то есть после вышеупомянутой команды, выполните команду авторизации ( Авторизуйте любой удаленный компьютер для входа в базу данных. ) :
Введите следующую команду, чтобы начать :
ПРЕДОСТАВЛЯЙТЕ ВСЕ ПРИВИЛЕГИИ НА *. * TO’root ‘@’% ‘, ОПРЕДЕЛЯЕМЫХ ПО ВАШЕМУ ПАРОЛУ’, С ПОМОЩЬЮ ГРАНТА;
предоставить все привилегии *. * для «root» («root»), идентифицируемого как «ваш пароль» с опцией предоставления;
Либо прописные, либо строчные. Появится следующее сообщение о том, что авторизация прошла успешно.
4.3 Обновить информацию о конфигурации
После нажатия вышеуказанной команды продолжайте вводить следующую команду, чтобы обновить наименование конфигурации, чтобы полномочия вступили в силу немедленно.
4.4 Выход из службы MySQL
Введите команду выхода для выхода из службы mysql, как показано на следующем рисунке;
4.5 Перезапустите mysql:
Выполните следующую команду, чтобы перезапустить MySQL.
service mysql restart
Конкретная информация показана на рисунке ниже, вам необходимо ввести пароль, чтобы авторизовать подтверждение для перезапуска службы mysql.
Наконец, вы можете войти в нашу базу данных через программное обеспечение визуализации базы данных управления нашего компьютера. Остальные операции такие же, как наши предыдущие операции с локальной базой данных.
Дополнение: ссылкаhttps://www.cnblogs.com/xbq8080/p/6572133.html Сделайте настройки для кодировки MySQL.
5. Настройки переадресации сетевых портов на виртуальной машине
[Управление] à [Настройки] à [Сеть] à [Дополнительно] à [Переадресация портов] à Настройки портов
Данные показаны на рисунке ниже.
6. Используйте Windows Local dbeaver для тестирования и подключения к интерфейсу базы данных в Ubuntu.
На этом этапе вы можете обратиться к опыту Baidu для подробных операций, конкретный URL:https://jingyan.baidu.com/article/93f9803f59e9a7e0e46f553a.html
Информация, показанная на рисунке ниже, представляет собой интерфейс конфигурации без создания новой базы данных.
Интеллектуальная рекомендация
UIWebView-OC и взаимодействие JS
1. Перехватить указанный URL-адрес в прокси-методе webView. 2. По перехваченному URL-адресу определите специальное поле, указанное в URL-адресе, для обработки соответствующего события. 3. Передайте ис.
Реализация стека
Каталог статьи рамки Libuv Синхронный I / O Асинхронный ввод / вывод Ручки и просит цикл событий Ссылаться на рамки Libuv Из официальной документации, вы можете найти картину дизайн рамы:libuv/docs/sr.
Ваш городской слоган? Python Trawly Анализ национальных купонов выпустил данные
| Лю рано Источник | Ранний Python (ID: Zaoqi-Python) Недавно в различных формах поощряется более разнообразные формы купонов потребления и субсидии потребления, а некоторые города постоянно добавляют.
Нажмите на картинку, чтобы выделить картинку
Настраиваем доступ к MySQL на VirtualBox из HOST машины
Всем привет! Вот мы и добрались до последней статьи по теме «Создание локального веб-сервера на VirtualBox». И сейчас мы разберем, как получить этот заветный доступ, чтобы разработка на своем сервере была максимально удобной и комфортной, а также установим несколько полезных пакетов.
К слову, мне пришлось не мало времени «поломать голову» и погуглить, чтобы найти заветные команды. Так давайте запустим сервер, который мы настраивали в предыдущих уроках и перейдем в терминал.
Для начала мы внесем правки в конфиг:
После любых изменений настроек следует перезапускать MySQL сервер, что мы и делаем:
Далее подключаемся к базе данных пользователем root через mysql-client:
Выбираем MySQL таблицу:
И выводим список всех хостов и пользователей базы данных:
Изменяем host для пользователя root:
И останется обновить привилегии:
А теперь давайте попробуем подключиться, выше я уже упоминал про Sequel Pro, поэтому на его примере и рассмотрим, вводим данные:
И если вы все правильно проделали выше, то при нажатии «Соединиться» увидите нашу бд:
Вот и все, теперь можно легко управляться с нашими базами.
Отключаем графическую оболочку Linux
Так как мы произвели все нужные настройки на нашем веб-сервере на VirtualBox, нам не нужна уже оболочка, которая ест ресурсы, поэтому мы её отключаем:
После перезагрузки вы увидите более приятную картину:
Ну и на всякий случай оставлю команду, которая потребуется для включения более дружелюбного интерфейса:
Несколько полезных пакетов: mc и htop
После его установки и наборе команды:
Мы увидим очень упрощённый файловый менеджер, который поможет решить более сложные задачи.
После установки пакета и наборе команды:
Заключение
Всего за 4 статьи мы разобрались с очень важной темой: создание собственного локального веб-сервера. В этих постах я постарался максимально подробно рассмотреть все моменты, с которыми сам и столкнулся, для удобства создал страницу на github с кратким мануалом. Можно еще много чего оптимизировать и улучшить и свести развёртывание новой локальной площадки в несколько минут, но это я пожалуй оставлю на будущие.
Статьи из серии «Создание локального веб-сервера»:
Локальный веб-сервер — VirtualBox, Debian, Nginx+php-fpm, MySQL
Дмитрий Корнев
Создавая недавно новый сайт на Yii2 я прилично помучился из-за различий рабочего окружения, которые обеспечивают локальный Open-Server на Windows и реальный сервер с Debian. Это вынудило меня настроить правильный локальный сервер, используя VirtualBox. В статье я расскажу, как это сделать.
Задача
Есть компьютер с Windows 10, где установлен VirtualBox. Создадим виртуальную машину в VirtualBox, установим на неё Debian. Затем настроим на этой машине веб-сервер и установим некоторый софт, необходимый для веб-разработки. Дополнительно настроим общую папку, чтобы удобно работать в ней с кодом сайтов в любимом редакторе под Windows. Открываться сайты тоже будут под Windows.
Виртуалка и Debian
Скачиваем новейший образ для установки Debian. Даю ссылку на страницу с образами, предназначенными для сетевой установки. Они маленькие, не имеют ничего лишнего, хорошо подходят для веб-сервера. Я использую 64-битный образ. На момент написания статьи актуален Debian версии 8.5.
Создаём виртуальную машину:
Объём памяти и диска по своему усмотрению.
Диск особо расходоваться не будет, т.к. мы будем работать с сайтами в общей папке, которая будет подключается к Debian как дополнительный носитель. Тип основного диска по умолчанию, динамический.
Машина подготовлена. Пока не включаем. Заходим в свойства машины, подключаем скаченный установочный образ на CD/DVD:
Пройдёмся по другим настройкам.
Число ядер процессора выбирайте сами, в зависимости от возможностей и потребностей. Обязательно установите отметку «Включить PAE/NX».
Можно выключить разные ненужные вещи, типа удаленного доступа по RDP, звуковой карты, порта USB стандарта 2.0 и т.д.
В сетевых адаптерах выбираем тип подключения «NAT», ниже тут же кликаем «Дополнительно» и заходим в «Проброс портов».
Здесь для SSH указываем порты 3022 и 22, для веба 80 и 80. Остальное заполнять не надо. Этого достаточно.
Почему именно «NAT»? Виртуальную машину сможете использовать только вы, она не будет видна в вашей локальной сети и никак на неё не повлияет. Для меня это важно.
Если вы хотите, чтобы ваша виртуальная машина полноценно добавлялась в вашу локальную сеть, то выбирайте тип подключения «Сетевой мост». Другие компьютеры в вашей локальной сети тоже смогут обращаться к вашей виртуальной машине.
В завершении добавляем общую папку:
Выходим из настроек.
Запускаем машину, устанавливаем Debian.
Процедура установки Debian ничем особо непримечательна. Выбираем вначале обычную установку, я предпочитаю с графическим интерфейсом. По ходу выбираем всякие параметры. Запасаемся терпением.
Ближе к концу установки надо будет выбрать компоненты, которые требуется установить. Рабочий стол и прочий мусор нам на веб-сервере не нужен, снимаем везде отметки. Оставляем только SSH-сервер и стандартные системные утилиты.
Предлагаемый в списке «web server» я тоже предпочитаю не ставить, т.к. там будет Apache, который в современном мире нафиг не нужен. Лучше установить потом самому именно те программы, какие нужны.
В общем, установка завершается, машина перезапускается.
Всё ок? Небольшая рекомендация. Делайте «снимки» машины на разных этапах настройки и использования. Это полезно! Если в процессе каких-то настроек или других действий что-то пойдёт не так, то вы сможете откатиться к предыдущему состоянию.
Вот сейчас машина успешно стартовала. Выключите её, сделайте снимок. Это займет от силы минуту.
Настройки
Пока продолжаем работать с созданной машиной через окно VirtualBox. К подключению по SSH вернёмся чуть позже.
В процессе установки Debian, кроме root, обязательно создаётся дополнительный пользователь. Если он совсем вам не нужен, то его можно удалить:
Дополнительный пользователь иногда полезен. Например, когда вы будете работать с Composer. Этот менеджер пакетов считает, что работа под root небезопасна и выдаёт предупреждение, хотя и продолжает исправно работать.
По умолчанию Debian не позволяет подключиться по SSH, используя пользователя root. Выглядит это так:
Дополнительным пользователем подключаться можно сразу.
Чтобы изменения вступили в силу перезагружаем машину.
Для подключений по SSH в Windows удобно использовать PuTTY. Адрес машины 127.0.0.1, порт 3022:
Теперь уже можно большую часть времени работать с виртуальной машиной через SSH. Оно удобнее, чем через окно VirtualBox. Окно PuTTY можно свободно растягивать и его содержимое будет под это подстраиваться. В вашем распоряжении буфер обмена и даже мышь.
Чтобы работала общая папка требуется установить дополнения гостевой ОС.
Для начала подключаем образ:
Теперь монтируем его:
Предварительно устанавливаем требуемые пакеты:
Теперь сама установка дополнений:
Результат успешной установки:
Чтобы добавить пользователя в эту группу выполняем:
Пользователь www-data по умолчанию используется Nginx.
Веб-сервер
Переходим к настройке веб-сервера:
Соответственно она появится и на основной машине. В эту папку поместим тестовый файл index.php с кодом:
Не имеет значения, как именно вы создаёте папки и файлы в общей папке. Можете всё это делать уже из вашей основной системы.
Создадим символическую ссылку для каталога сайта:
Подключим файл настроек:
В него надо добавить строчку:
Если сайт не открылся, вы получили белую страницу, то скорее всего у вас в основной системе уже используется каким-то приложением порт 80. Соответственно проброс этого порта из виртуальной системы в основную не удался и ничего не работает.
Чтобы выяснить, выключите пока виртуальную машину. В основной системе откройте консоль:
Получим примерно такое:
Чтобы узнать, что это за приложение, открываем диспетчер задач:
На вкладке «Подробности» делаем сортировку по колонке «ИД процесса» и ищем нужный номер. В моём случае это оказался Skype.
По умолчанию Skype использует именно 80-ый порт для соединений, но это можно изменить в его настройках. Убираем галочку «Для дополнительных входящих соединений следует использовать порты 80 и 443». Выходим из настроек, перезапускаем Skype.
Той же командой в консоли ещё раз делаем проверку:
Теперь 80-ый порт никем не используется. Запускаем обратно виртуальную машину и снова пробуем открывать сайт. Теперь, если вы всё делали по инструкции, то он точно должен открыться!
Nginx
При подобном использовании веб-сервера внутри VirtualBox есть одна особенность с Nginx. Файлы сайтов получается будут лежать и модифицироваться в общей папке. Система внутри VirtualBox не будет знать, когда файлы в этой папке были модифицированы, отсюда проблема. Nginx думает, что файлы не менялись и добросовесно отдаёт старые их версии, закешированные.
Очень многие сталкиваются с этими граблями. Типичный случай: вы изменили файл CSS или JS, а на сайте не видно этих изменений, файл используются старый.
Мне помогло решить проблему включение в конфиг Nginx параметра:
Некоторым помогает ещё этот дополнительный параметр:
Дополнительная информация по теме.
Вместо обычного MySQL я предпочитаю Percona Server. Многие рекомендуют этот продукт, благодаря скорости и дополнительным фичам. Я использую Percona Server не менее 2 лет и тоже могу его рекомендовать. Для сайта, для любого сайтового движка — это будет просто MySQL, они не увидят разницы.
Я не делал сравнений. Просто однажды перешел на Percona Server и все. Никаких проблем никогда не было. Если при этом есть хоть небольшой прирост скорости, оно стоит того.
Установка Percona Server:
В процессе установки потребуется указать пароль для root-пользователя базы. Не путайте с root-пользователем системы.
Установим дополнительно phpMyAdmin. Последнее время я предпочитаю это делать через Composer. Так проблем меньше, да и версия точно будет новая. Вначале установим сам Сomposer:
В этом каталоге запускаем установку phpMyAdmin:
Workbench
Приложение MySQL Workbench — это удобный инструмент для работы с базой. Устанавливать его нужно на основной машине. Для подключения к базе MySQL на виртуальной машине можно использовать SSH. При создании подключения просто устанавливаем параметр «Connection Method» в состояние «Standard TCP/IP over SSH» и далее вписываем уже знакомые параметры:
Рабочий софт
Установка Composer уже была выше. Остальное по желанию.
Если будут предупреждения:
Тогда надо установить предложенное, пример далее. В вашем случае версии могут быть другие, обратите на это внимание.
Vagrant
Это такая вспомогательная программа для VirtualBox. Хотя, работает и с другими системами виртуализации. Позволяет легко и быстро автоматизированно создавать виртуальные машины. Можно создать наподобие той, которую мы уже создали. Работать с Vagrant необходимо из командной строки.
Пишу это здесь просто для информации, что такое есть.
Я пробовал Vagrant. Да, действительно программа делает своё дело. Но мне показалось это лишним и не совсем тем, что надо. Мои соображения на этот счёт:
В принципе, боксы для Vagrant — это созданные и специально настроенные виртуальные машины VirtualBox. Мы, вот, создали свою виртуальную машину. Её, в теории, можно немного допилить, чтобы использовать в качестве бокса Vagrant. Бокс может быть локальным.
Я когда начал изучать информацию по Vagrant, то меня напугали все эти инструкции в интернете. В каждой автор начинает разбирать конфигурационный файл виртуальной машины, и это поначалу выглядит дико и совсем непросто. Спешу успокоить новичков! Этот файл создается автоматически самим Vagrant-ом. Вы (при желании) можете внести в него дополнительные параметры, а можете и не вносить! Машина просто получит настройки по умолчанию. Часто этого достаточно.
Далее простой пример, как можно создать с помощью Vagrant тот же веб-сервер на базе Debian 8.
Перед тем как начать скачиваем Vagrant с официального сайта и устанавливаем его в любую папку. Важно, чтобы в пути к этой папке не было русских символов.
Открываем консоль в Windows:
Скачиваем нужный бокс и убеждаемся, что он попал в список доступных локально боксов:
Для первой команды название бокса я нашёл в списке по запросу «debian 8 lemp». Вот информация по нему, где автор советует перед использованием бокса выполнить установку плагина:
Такая команда выполняется единожды, если ранее данный плагин ещё не инсталлировался. Плагин позволяет автоматически устанавливать в виртуальную машину дополнения гостевой ОС.
Создаём каталог и переходим в него, например:
Инициализация виртуальной машины:
Всё! Через некоторое время машина будет готова.
При установке машины автоматически устанавливаются все актуальные обновления Debian. При каждом старте монтируется общая папка.
Таким образом, всего несколько команд в консоли и у нас готовая для работы виртуальная машина.
Последующий запуск машины из консоли происходит быстро:
В VirtualBox машину тоже видно:
Docker
Это ещё один альтернативный вариант.
По своей сути Docker предлагает уже не виртуализацию, а создание изолированных контейнеров поверх вашей основной системы. Таких контейнеров на одной системе можно запускать множество. Приложения в каждом из них работают полностью независимо.
Из-за того, что здесь нет полноценной виртуализации, то нет и расхода лишних ресурсов на виртуальные операционные системы. Процессор, диск, память расходуются исключительно на установленные в контейнерах приложения.
Docker предназначен для Linux и использует для создания контейнеров специфику ядра этой операционной системы. В Windows использовать Docker можно двумя способами. Во-первых, есть Boot2docker, который автоматически создаёт, опять же, в VirtualBox виртуальную машину и уже там запускает контейнеры. Во-вторых, можно самостоятельно создать виртуальную машину с Linux и там разворачивать контейнеры.
Автоматически созданная машина Boot2docker-ом:
Помимо уже сказанного есть ещё одна очень весомая фишка.
Мы создаём для разработки сайта один или несколько контейнеров Docker. Зависит от его сложности и масштабов. Потом, когда сайт будет готов, то мы именно эти же контейнеры просто переносим на хостинг! Получается, что сайт продолжает работать в своём родном окружении, уже на совсем другой площадке.
На мой взгляд Docker интересен, но только если вы работаете именно в Linux. Использование контейнеров через виртуализацию трудно назвать изящным вариантом. Поэтому я, как пользователь Windows, отказался от Docker. Во всяком случае, нет пока необходимости.