Sql enterprise server 2018: Цены на SQL Server 2019

Настройка соединения ODBC с MS SQL Server в Windows

[Эта статья была впервые опубликована на Programming на nielsenmark.us и любезно предоставлена ​​R-блогерами]. (Вы можете сообщить о проблеме с содержанием на этой странице здесь)


Хотите поделиться своим контентом с R-блогерами? нажмите здесь, если у вас есть блог, или здесь, если у вас его нет.

Подключение к базам данных является важной частью анализа данных в R. В большинстве аналитических ролей данные, которые мы потребляем, находятся в базах данных. Среди них наиболее распространенными являются базы данных SQL, такие как MS SQL Server, PostgreSQL и Oracle, а также многие другие. В этом блоге с практическими рекомендациями я расскажу вам об основных этапах настройки вашего компьютера и R, чтобы иметь возможность подключаться к базе данных MS SQL Server из R в Windows. Аналогичные шаги можно выполнить для настройки подключений к другим базам данных, однако установка и настройка драйвера, вероятно, будут немного отличаться.

Загрузка и установка драйверов

Первым шагом является загрузка необходимых драйверов odbc для вашей базы данных. Поскольку большинство установок Windows поставляются с установленными драйверами MS SQL Server, мы быстро справимся с этим шагом. Если он у вас не установлен, вы можете следовать этим инструкциям здесь.

Настройка DSN для подключения ODBC

Этот шаг необязателен, но я обнаружил, что настройка DSN (он же «Имя источника данных») может упростить настройку кода в R.

ШАГ 1: Найдите «ODBC» в меню «Пуск» и откройте «Администратор источника данных ODBC (64-разрядная версия)».

Шаг 2: Выберите «Добавить» на вкладке «Пользовательский DSN».

Шаг 3: Выберите соответствующий драйвер ODBC, для которого вы хотите настроить источник данных, и нажмите «Готово».

Шаг 4: Дайте вашему DSN «Имя» и «Сервер» имя/IP-адрес и нажмите «Далее».

Шаг 5: Определите базу данных по умолчанию и нажмите «Далее».

Шаг 6: Нажмите «Далее» во всех оставшихся окнах, затем нажмите «Готово». Должно появиться окно для проверки соединения. Дважды проверьте свои параметры, затем нажмите «Проверить источник данных».

Шаг 7: Если все прошло успешно, должно появиться следующее сообщение. Нажмите «ОК».

Шаг 8: Наконец, вы должны увидеть свой новый DSN, указанный на вкладке «User DSN». Нажмите «ОК», чтобы выйти из средства настройки ODBC DSN.

Установить пакет

odbc в R

В прошлом я использовал пакет RODBC , но недавно обнаружил, что пакет odbc намного лучше работает с другими инструментами баз данных, такими как DBI 9 0065 и dbplyr . Кроме того, он имеет очень похожий синтаксис на пакет RJDBC , и ради согласованности я переключился.

 install.packages('odbc') 

Подключение к базе данных из R

Итак, мы готовы к подключению… Барабанная дробь, пожалуйста. Для начала давайте установим наше соединение, используя конфигурацию DNS, которую мы настроили ранее.

 библиотека (odbc)
библиотека (dplyr)
библиотека (dbplyr)
# Подключиться через DSN
db <- DBI::dbConnect(odbc::odbc(), "SQL") 

Это было просто! Теперь мы готовы работать с нашими данными. Если вы отказались от создания DSN, приведенный ниже код — это то, что вы будете использовать для подключения. Нажатий клавиш намного больше, но бонус в том, что не требуется дополнительная настройка за пределами R, что может быть удобно, когда вы пытаетесь поделиться своим кодом с коллегами, которые тоже хотят подключиться к базе данных.

 # Подключиться без DSN
db <- DBI::dbConnect(odbc::odbc(),
                     Драйвер = «Драйвер ODBC 13 для SQL Server»,
                     Сервер = 'localhost\\SQLEXPRESS',
                     База данных = "мастер",
                     доверенное_соединение = 'да',
                     Порт = 1433
                     ) 

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

 # Записать данные радужной оболочки в MS SQL Server
# DBI::dbWriteTable(db,"iris",iris)
# Чтение данных из MS SQL Server
my.iris <- DBI::dbGetQuery(db,"SELECT * FROM IRIS")
голова (мой.ирис)
## Чашелистик.Длина Чашелистик.Ширина Лепесток.Длина Лепесток.Ширина Виды
## 1 5,1 3,5 1,4 0,2 щетина
## 2 4,9 3,0 1,4 0,2 щетина
## 3 4,7 3,2 1,3 0,2 щетинковидная
## 4 4,6 3,1 1,5 0,2 щетина
## 5 5,0 3,6 1,4 0,2 щетина
## 6 5,4 3,91.7 0.4 setosa 

Наконец, используйте пакет dbplyr, чтобы расширить функции dplyr для нашего соединения с базой данных.

 smry <- tbl(db,"iris") %>% собирать
голова (смри)
## # Тиббл: 6 x 5
## Чашелистик.Длина Чашелистик.Ширина Лепесток.Длина Лепесток.Ширина Виды
##     
## 1 5,1 3,5 1,4 0,2 щетина
## 2 4,9 3 1,4 0,2 щетина
## 3 4,7 3,2 1,3 0,2 щетинковидная
## 4 4,6 3,1 1,5 0,2 щетина
## 5 5 3,6 1,4 0,2 щетина
## 6 5,4 3,91,7 0,4 сетоза
# Не забудьте отключить
дбдисконнект (дб) 

К оставьте комментарий для автора, пройдите по ссылке и оставьте комментарий в их блоге: Программирование на nielsenmark. us .


R-bloggers.com предлагает ежедневных обновления по электронной почте новостей R и руководств по изучению R и многим другим темам. Нажмите здесь, если вы хотите опубликовать или найти работу R/data-science.


Хотите поделиться своим контентом с R-блогерами? нажмите здесь, если у вас есть блог, или здесь, если у вас его нет.

Различные способы поиска номера порта SQL Server

Различные способы найти номер порта SQL Server

Все мы знаем, что SQL Server по умолчанию прослушивает порт с номером 1433. Но из соображений безопасности номер порта по умолчанию может быть изменен на другой порт, чтобы свести к минимуму взлом SQL Server.

Существует множество способов, с помощью которых можно узнать номер порта SQL-сервера, который он прослушивает.

  1. Использование диспетчера конфигурации SQL Server
  2. Использование реестра
  3. Использование журнала ошибок
  4. и т. д...

Использование диспетчера конфигурации SQL Server :
Нажмите «Пуск» >> «Выполнить».
Для SQL Server 2005 введите «SQLServerManager.msc» и нажмите «ОК». Диспетчер конфигурации SQL Server для вас.
Теперь на левой панели разверните «Сетевая конфигурация SQL Server» и щелкните «Протоколы для »
Сейчас На правой панели щелкните правой кнопкой мыши протокол «TCP/IP» и перейдите к свойствам

В свойствах TCP/IP перейдите на вкладку «IP-адреса», прокрутите вниз и найдите раздел «IPAll».
В разделе «IPAll» «TCP-порт» представляет собой номер порта, который прослушивает SQL Server.

Примечание : — имя вашего экземпляра SQL Server

Использование реестра :
Чтобы найти номер порта SQL Server с помощью реестра, выполните приведенный ниже запрос.

DECLARE @InstanceName nvarchar(50)

DECLARE @value VARCHAR(100)

DECLARE @RegKey_InstanceName nvarchar(500) 9 0006 DECLARE @RegKey nvarchar(500)

SET @InstanceName=CONVERT(nVARCHAR , isnull(SERVERPROPERTY('INSTANCENAME'),'MSSQLSERVER'))

--Для SQL Server 2000

if(SELECT Convert(varchar(1),(SERVERPROPERTY('ProductVersion'))))=8

if @InstanceName='MSSQLSERVER'

SET @RegKey='SOFTWARE\Microsoft\'+@InstanceName+'\MSSQLServer\SuperSocketNetLib\TCP\'

SET @RegKey='ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ\Microsoft\Microsoft SQL Server\'+@InstanceName+'\MSSQLServer\SuperSocketNetLib\TCP\'

EXECUTE xp_regread

  @rootkey = 'HKEY_LOCAL_MACHINE',

  @key = @RegKey,

  @value_name = 'TcpPort',

  @value = @value OUTPUT

Выберите @@SERVERNAME в качестве имени сервера, @value в качестве номера порта

--Для SQL Server 2005 и выше

if(SELECT Convert(varchar(1)) ,(SERVERPROPERTY('ProductVersion'))))<>8

SET @RegKey_InstanceName='SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL'

EXECUTE xp_regread

  @rootkey = 'HKEY_LOCAL_MACHINE',

  @key = @RegK ey_InstanceName,

  @value_name = @InstanceName,

  @value = @value OUTPUT

SET @RegKey='ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ\Microsoft\Microsoft SQL Server\'+@value+'\MSSQLServer\SuperSocketNetLib\TCP\IPAll'

EXECUTE xp_regread

  @rootkey = 'HKEY _LOCAL_MACHINE',

  @key = @RegKey,

  @value_name = 'TcpPort',

  @value = @value ВЫВОД

Выберите @@SERVERNAME в качестве имени сервера, @value в качестве номера порта

КОНЕЦ

9 0229

Использование Журнал ошибок :

Чтобы найти номер порта SQL Server с помощью журнала ошибок, выполните приведенный ниже запрос.

УСТАНОВИТЬ NOCOUNT ON
if(SELECT Convert(varchar(1),(SERVERPROPERTY('ProductVersion'))))=8

Создать таблицу ##ErrorLog_2K

(ErrorLog nvarchar(1000),

ContinuationRow int )

ВСТАВИТЬ В ##ErrorLog_2K

Exec master..xp_readerrorlog

901 06 SELECT DISTINCT @@SERVERNAME as[ServerName], SUBSTRING(RIGHT (ErrorLog,5),1,4) как [PortNumber]

FROM ##ErrorLog_2K, где ErrorLog типа "%SQL Server прослушивает 1%"

DROP TABLE ##ErrorLog_2K

if(SELECT Convert(varchar(1)) ,(SERVERPROPERTY('ProductVersion'))))<>8

Create Table ##ErrorLog

(Logdate datetime,

ProcessInfo nvarchar(100),

[текст] nvarchar(1000))

INSERT INTO ##ErrorLog exec master..xp_readerrorlog

ВЫБЕРИТЕ ОТЛИЧНЫЙ @@ИМЯ_СЕРВЕРА as[ServerName] , SUBSTRING(RIGHT(text,6),1,4) as [PortNumber]

FROM ##ErrorLog, где текст типа «Сервер прослушивает % ''any'' %'

DROP TABLE ## ErrorLog

SET NOCOUNT OFF

Скачать скрипты можно отсюда.