Подготовка ODBC драйвера для подключения к MySQL

Для корректного подключения к базам данных MySQL необходима установка драйверов ODBC. Поддерживается выполнение только запросов, команд СУБД. Создание и использование таблиц, представлений, процедур и функций поддерживается в зависимости от возможностей конкретной СУБД и её соответствия стандартам SQL.

В данной статье приведен пример создания базы данных, таблицы и пользователя для подключения к MySQL с помощью драйвера Connector/ODBC на Ubuntu 18.04.

Предварительно необходимо установить клиентскую и серверную части MySQL:

sudo apt-get install mysql-server

sudo apt-get install mysql-client

Установить unixodbc и odbcinst, если их нет:

sudo apt-get install unixodbc

sudo apt-get install odbcinst

В Ubuntu 18.04 из официального репозитория была удалена библиотека libmyodbc. В связи с этим установите Connector/ODBC вручную.

Совет. Для MySQL 5.7 рекомендуется скачать MySQL Connector/ODBC 5.3.13.

После подготовки ODBC драйвера установите или перезапустите BI-сервер, если он был установлен ранее.

Установка Connector/ODBC

Рассмотрим пример установки Connector/ODBC на Ubuntu 18.04.

Для установки Connector/ODBC выполните действия:

  1. Скачайте архив с исходными файлами Connector/ODBC.

  2. Распакуйте архив:

tar xvf mysql-connector-odbc-5.3.13-linux-ubuntu18.04-x86-64bit.tar

  1. Скопируйте содержимое папок bin и lib в домашний каталог Linux:

cd mysql-connector-odbc-5.3.13-linux-ubuntu18.04-x86-64bit

cp bin/* /usr/local/bin

cp lib/* /usr/local/lib

  1. Зарегистрируйте выбранную версию драйвера (ANSI, Unicode или обе):

//Unicode Driver

myodbc-installer –a –d –n “MySQL ODBC 5.3 Unicode Driver” –t “Driver=/usr/local/lib/libmyodbc5w.so”

//ANSI Driver

myodbc-installer –a –d –n “MySQL ODBC 5.3 ANSI Driver” –t “Driver=/usr/local/lib/libmyodbc5a.so”

  1. Убедитесь, что драйвер установлен и зарегистрирован с помощью команды:

myodbc-installer –d –l

В результате компиляции в терминале должно быть выведено имя зарегистрированных драйверов:

MySQL ODBC 5.3 Unicode Driver

MySQL ODBC 5.3 ANSI Driver

Примечание. Информация о зарегистрированных драйверах хранится в конфигурационном файле /etc/odbcinst.ini.

  1. Отредактируйте файл настроек /etc/mysql/my.cnf или /etc/mysql/mysql.conf.d/mysqld.cnf для подключения к удаленному серверу MySQL. В одном из файлов конфигурации хранится строка:

bind-adress = 127.0.0.1

Для подключения к базе данных с любого IP-адреса замените строку на:

bind-adress = 0.0.0.0

  1. Перезапустите MySQL:

sudo systemctl restart mysql

Создание базы данных, таблицы и пользователя

Для создания базы данных:

  1. Создайте базу данных в MySQL с идентификатором test_database.

  2. Создайте таблицу с идентификатором test_table в базе данных и заполните ее значениями от 1 до 10.

  3. Создайте пользователя и предоставьте ему права для подключения к базе данных:

create user ‘test_user’@’%’ identified by ‘123’;

grant all privileges on *.* to ‘test_user’@’%’ identified by ‘123’;

% - означает, что пользователь может подключаться с любого IP-адреса.

  1. Создайте DSN для ранее созданной базы данных.

sudo myodbc-installer –s –a –c2 –n “TestDSN” –t “DRIVER=MySQL ODBC 5.3 Unicode

Driver;SERVER=10.9.162.87;DATABASE=test_database;UID=test_user;PWD=123”

  1. Подключитесь к созданной DSN:

isql TestDSN

При успешном подключении к созданной DSN будет получено следующее сообщение:

+---------------------------------------+

| Connected!                            |

|                                       |

| sql-statement                         |

| help [tablename]                      |

| quit                                  |

|                                       |

+---------------------------------------+

Примечание. Созданные DSN хранятся в конфигурационном файле /etc/odbc.ini.

См. также:

Дополнительные настройки