Arhn - архитектура программирования

найти правильный порт для подключения к базе данных Skype

Я пытаюсь подключиться к базе данных Sybase с метаданными о Skype под названием skype2. Код написан на Perl, и для подключения я использую модуль DBI.

Вот мой код:

  my $dbh = DBI->connect("dbi:Sybase:server=skype2;database=*****", 'user', 'pass', {PrintError => 1});   

Я установил [skype2] DSN в freetds.conf, расположенный в /etc:

[skype2]
    host = **.**.**.**
    port = 49396
    tds version = 7.0

Проблема в том, что мне нужно найти порт динамически через запрос к базе данных (здесь это 49396). Должен ли я использовать netstat для подключения и поиска нужного порта, или есть лучший способ?

Благодарю за ваш ответ.

21.01.2017

  • Это из-за чат-программы Microsoft Skype? 21.01.2017
  • @simbabque я точно не знаю. я использую эту базу данных, чтобы найти все звонки по скайпу, происходящие для определенной компании! 21.01.2017
  • Я так понимаю, вы имеете в виду Sybase, а не MySQL, так как об этом говорит название драйвера? Итак, кажется, ваши операторы решили запустить сервер базы данных на нестандартном порту, и вам просто нужно подключиться к нему. Поскольку они, вероятно, не будут менять назначения портов каждый день, кажется разумным найти порт один раз и соответствующим образом изменить файл конфигурации. На самом деле это должно быть где-то задокументировано, чтобы вам не пришлось возиться с netstat... 21.01.2017
  • FreeTDS можно использовать для подключения к SQL Server или Sybase. Во-первых, выясните, какой из них, потому что это повлияет на то, какую версию TDS вы должны использовать. Что касается поиска порта, его документирование и стандартизация — это путь. Использование netstat или чего-то подобного, скорее всего, закончится вилами, факелами и слезами! 22.01.2017
  • @FlipperPA да, его Sybase.port задокументирован, но в реальном мире он сначала подключается к этому порту, а затем согласовывается с правильным портом, и вот здесь freetds не может работать, поэтому мне нужно найти согласованный порт вручную. я попросил лучший способ! 22.01.2017
  • @mbethke, пожалуйста, прочитайте ответ выше. 22.01.2017

Ответы:


1

Если я правильно понимаю, вам нужно подключиться к базе данных, чтобы найти порт вторичной базы данных. Вы можете указать PORT как часть строки подключения, даже как переменную. Вот пример строки подключения, которая должна помочь:

my $port = "1433";
my $dbh = DBI->connect('DBI:ODBC:DRIVER={FreeTDS};SERVER=yourfullserver.com;PORT=' . $port . ';DATABASE=yourdbname;TDS_Version=7.2', 'user', 'password', {PrintError => 1});

Это позволит вам подключиться к динамическому порту. Итак, подключитесь к вашему первому серверу, получите нужный вам номер порта из БД и сохраните его в переменной, затем подключитесь ко второй базе данных. Удачи!

22.01.2017
Новые материалы

Коллекции публикаций по глубокому обучению
Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

Представляем: Pepita
Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

Советы по коду Laravel #2
1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

3 способа решить квадратное уравнение (3-й мой любимый) -
1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

Создание VR-миров с A-Frame
Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

Демистификация рекурсии
КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..