Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как подключиться к SQL Server на виртуальной машине Win7 с хоста Mac?

Автор вопроса: VincentОтветов: 2

Я восстановил резервную копию MSSQL в SQL Server Express на виртуальной машине Windows 7 под Virtualbox. Я пытаюсь подключиться к этому экземпляру SQL Server с хоста (Mac OS), используя пользователя внутри импортированной базы данных, у которого есть учетные данные для подключения. Виртуальная машина настроена на использование адаптера только для хоста. SQL Server Express работает внутри виртуальной машины на WIN7VM/SQLEXPRESS, порт 1433.

Я могу без проблем подключиться к Apache на виртуальной машине через порт 8080 с хоста Mac. Я также могу подключиться к SQL-серверу через порт 1433 с хоста Mac, используя только IP-адрес хоста (192.168.56.101).

Чего я не могу сделать, так это подключиться к SQL-серверу из Navicat в MacOS или удаленно с помощью PHP. Вот что я пробовал:

  • Отключенный брандмауэр Windows
  • Настроенный параметр порта SQL-сервера для использования 1433
  • Включена аутентификация SQL-сервера
  • Включен TCP/IP в SQL Server
  • Включены удаленные подключения к SQL серверу

Я пытаюсь подключиться к этой информации:

  • Хост/IP-адрес: 192.168.56.101 ИЛИ 192.168.56.101\SQLEXPRESS (пробовали оба)
  • Порт: 1433
  • База данных: Моя база данных
  • Тип аутентификации: Базовый
  • Имя пользователя: имя пользователя
  • Пароль: пароль

Чего мне здесь не хватает, чтобы иметь возможность удаленно подключаться без проблем? Заранее спасибо!

  • Я считаю, что вам нужно использовать мостовой адаптер, а не адаптер только для хоста. Адаптер только для хоста не использует физическую сетевую карту, так что, вероятно, проблема здесь. Donal 02.10.2014
  • @Donal: есть еще идеи? Я добавил вознаграждение к этому вопросу, поэтому я был бы рад дать его вам, если вы поможете мне решить его. Спасибо! Vincent 07.10.2014

virtualboxsql-servervirtual-machine

Ответы

Ответ 1 · рейтинг 4 · Donal

Я считаю, что вам нужно использовать мостовой адаптер, а не адаптер только для хоста. Адаптер только для хоста не использует физическую сетевую карту, так что, вероятно, проблема здесь. Я столкнулся с той же проблемой раньше. Использование мостового сетевого подключения как на хосте, так и на госте - будет означать, что оба находятся в одной сети. Предполагая, что брандмауэр не блокирует порт 1433, вы сможете подключиться без проблем.

Ответ 2 · рейтинг 2 · Vincent

Оказалось, что это не проблема Virtualbox, а проблема аутентификации SQL Server.

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

MSDN - управление логинами, пользователями и схемами, инструкции Темы

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы