Подтвердить что ты не робот

Есть ли разница между (local), '.' и localhost?

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

4b9b3361

Ответ 1

Конечный результат тот же. Разница заключается в следующем:

  • "localhost" разрешается на уровне TCP/IP и эквивалентен IP-адресу 127.0.0.1
  • В зависимости от приложения "(локальный)" может быть просто псевдонимом для "localhost". В SQLServer, '(local)' и '.' означает, что соединение будет осуществляться с использованием протокола именованных каналов (разделяемой памяти) на одном компьютере (не нужно проходить через стек TCP/IP).

Это теория. На практике я не думаю, что есть существенная разница в производительности или функциях, если вы используете один из них.

Ответ 2

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

Ответ 3

Насколько я знаю, точка ". и " локальная " - это термины приложений Windows, а не" стандартный "термин, localhost разрешает 127.0.0.1 на уровне TCP/IP, поэтому, если вы хотите убедиться, что вы" совместимы" на разных платформах, вы должны использовать либо localhost, либо 127.0.0.1

Ответ 4

Различия, описанные Серхио, могут иметь заметные эффекты из-за разрешений.

Пользователь sql, скорее всего, имеет доступ к именованному каналу, но часто не может получить доступ к localhost. Вы заметите достаточно скоро, когда это так:)