Подключение и работа с базой данных в продуктах Yeastar

Материал из Xgu.ru

Перейти к: навигация, поиск
stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.


Эта статья описывает подключение к базам данных станции MyPBX.

Содержание


[править] Подключение к базам данных «CDR» и «Record», станции MyPBX с помощью доступа к выделенному порту MySQL

Для подключения к базе данных (таблицы статистики «CDR» и записи разговоров «Record») необходимо выполнить следующие действия:

1. Включить доступ к таблицам базы в веб-панели станции MyPBX во вкладке «Система» -> «Доступ к базе данных». Нажать кнопку «добавить» для создания учетной записи и настройки разрешений.

YsAddDBUser.jpg

2. Создать пользователя для работы с базой и задать пароль. Выбрать таблицы «CDR» и «Record». В примере использован произвольный логин «dbreader», пароль «dbtest».

YsAddDBUserDlg.jpg

3. После произведенных настроек доступ к БД на станции будет открыт по порту 3306. 

[править] Подключение MySQL Workbench к базе данных MySQL MyPBX

Для проверки доступа к MySQL по порту, необходимо настроить подключение к базе данных в клиентском приложении.

Ниже описано подключение к MySQL станции на примере приложения MySQL Workbench.

Для подключения необходимо выполнить следующие действия:

1. В консоли MySQL Workbench создать новое подключение.

YsMsWBConnect1.png

2. В параметрах подключения, ввести Адрес MyPBX, Имя пользователя, Порт (3306), Пароль (ввести в всплывающем окне).

YsMsWBConnect2.jpg

3. В вкладке «Advanced» в параметрах подключения, выбрать флажок использование протокола аутентификации старого образца «Use the old authentication protocol».

YsMsWBConnect3.jpg

4. После настройки параметров авторизации, в консоли приложения MySQL Workbench, будут доступны инструменты для работы с базой данных.

YsMsWBConnect4.jpg

[править] Подключение MySQL Workbench к базе данных MySQL MyPBX с помощью SSH туннеля

Для подключения к серверу баз данных в станции MyPBX в средствах интеграции сторонних приложений, необходимы библиотеки, которые поддерживают соединение с MySQL сервером через туннель SSH.

Механизм подключения и работы с MySQL через SSH должен поддерживаться практически во всех средствах разработки и библиотеках.

База данных MyPBX в документации Производителя и методы работы с ней официально не описаны, поэтому попытаемся дать Вам некоторые рекомендации.

Подключение к базе данных рассмотрим на примере утилиты MySQL Workbench, которую можно скачать http://www.mysql.com/products/workbench/:

1. В веб-панели MyPBX необходимо разрешить подключение к станции MyPBX по протоколу SSH.

YsMySQLWBSSH1.jpg

2. В MySQL Workbench создать подключение с помощью “Standart TCP/IP over SSH”.

3. В поле SSH Hostname – указать IP-адрес станции и порт SSH – 8022.

4. В поле SSH Username – указать имя пользователя SSH – root,

5. В диалоге по кнопке “Store In Vault …” под SSH Password указать пароль (по умолчанию – ‘ys123456’)

6. В поле MySQL Username – указать localhost IP-адрес станции 127.0.0.1, в поле MySQL Server Port указываем порт 3306

7. В поле Username указать имя пользователя Базы данных – root

8. В диалоге по кнопке “Store In Vault …” под Password указать пароль (по умолчанию – ‘ys123456’)

YsMySQLWBSSH2.jpg

9. Во вкладке Advanced установить флажок «Use the old authentication protocol».

YsMySQLWBSSH3.jpg

10. Кнопкой Test Connection мы можем проверить подключение. Подключение должно выполниться успешно.

11. В панели MySQL Workbench появится запись настроенного подключения, при нажатии на которую открывается консоль редактора баз данных.

YsMySQLWBSSH4.jpg

В редакторе Баз Данных выбираем Базу данных «mypbx»

YsMySQLWBSSH5.jpg

В базе данных MyPBX выбираем таблицу «extensions», в таблице «extensions», с помощью вызова контекстного меню правой клавишей мыши выбираем «SELECT ROWS».

YsMySQLWBSSH6.pngYsMySQLWBSSH61.png

В верхней половине рабочей области редактора мы имеем возможность ввода команд SQL, а в нижней – видим отображение результата.

YsMySQLWBSSH7.png

С помощью данного редактора можно найти необходимую Вам информацию по данным для Вашей задачи по интеграции.

Важно отметить, что выполнение команд по изменению структуры Базы Данных (выполнение операторов DDL) может вызвать нарушение работоспособности MyPBX, которое возможно будет устранить только лишь возвратом АТС к заводской конфигурации.

[править] Работа с БД из командной строки

Доступ к базе данных возможен также из командной строки станции.

Для доступа необходимо подключиться к MyPBX по протоколу SSH.

В консоли SSH, необходимо набрать следующие команды:

Команда:

mysql -uroot -p

Пользователь: root

Пароль: ys123456

Или вход с указанием пароля, команда:

mysql -uroot -pys123456


Примеры работы с БД из командной строки:

Пример 1. Выборка данных из таблицы Extensions

root@MyPBX:/persistent/etc/samba/lib# mysql -uroot -pys123456
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2165
Server version: 5.1.61 Source distribution

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

No entry for terminal type "xterm";
using dumb terminal settings.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> use mypbx;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

mysql> select USERNAME, FULLNAME, CID_NUMBER  from extensions;
+----------+----------+------------+
| USERNAME | FULLNAME | CID_NUMBER |
+----------+----------+------------+
| 104      | 104      | 104        |
| 103      | 103      | 103        |
| 102      | 102      | 102        |
| 101      | 101      | 101        |
| 100      | 100      | 100        |
| 105      | 105      | 105        |
| 106      | 106      | 106        |
| 380      | 380      | 380        |
| 381      | 381      | 381        |
| 382      | 382      | 382        |
| 383      | 383      | 383        |
| 384      | 384      | 384        |
| 385      | 385      | 385        |
| 386      | 386      | 386        |
| 387      | 387      | 387        |
| 388      | 388      | 388        |
| 389      | 389      | 389        |
+----------+----------+------------+
17 rows in set (0.00 sec)

mysql>


Пример 2. Изменение значения поля NICKNAME в таблице mypbx.autop_phonebook:

login as: root
root@192.168.254.232's password:
root@MyPBX:~# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3449
Server version: 5.1.61 Source distribution
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
No entry for terminal type "xterm";
using dumb terminal settings.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> UPDATE mypbx.autop_phonebook SET NICKNAME = '1' WHERE OFFICE = '123678';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
mysql> UPDATE mypbx.autop_phonebook SET FIRSTNAME = '1' WHERE OFFICE = '123678';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
mysql>