Centos下安装并配置ODBC连接MySQL
    文章作者:恒爱云[恒爱网络] 阅读次数:7125 发布时间:2015-6-8

    ODBC连接器是一个数据库抽象层,它可以让Asterisk与广泛的数据库进行通信,而无需开发人员为Asterisk需要的每一个数据库创建一个单独的数据库连接。这样可以节省大量的开发工作和代码维护。因为我们在Asterisk和数据库之间添加了其他应用层可能会有轻微的性能损失,但当你需要Asterisk系统功能强大,灵活的数据库功能时可以缓解适当的设计是值得的。(Ps:这段属于废话,看看就行了)

    在安装连接器在Asterisk,您必须安装ODBC到Linux。要安装的ODBC驱动程序,请使用以下命令。

    $sudo yum install unixODBC unixODBC-devel libtool-ltdl libtool-ltdl-devel


    默认情况下,CentOS会安装通过ODBC连接PostgreSQL的驱动。要安装ODBC连接MySQL的驱动请执行下面的指令:


    $sudo yum install mysql-connector-odbc

    为MySQL配置ODBC

    MySQL的配置文件在/etc/odbcinst.ini

    CentOS上默认文件已经包含了一些数据,包括MySQL的也存在,但我们需要一些更改。用下面的数据进行更改:

    [MySQL]
    Description = ODBC for MySQL
    Driver = /usr/lib/libmyodbc3.so
    Setup = /usr/lib/libodbcmyS.so
    FileUsage = 1

    通过运行下面的指令验证系统能找到驱动,如果一切都OK,会返回MySQL的标题:

    # odbcinst -q -d[MySQL]

    接下来,配置/etc/odbc.ini文件,根据自己的需要配置这里的文件,使数据库能被你的软件使用

    [asterisk-connector]
    Description           = MySQL connection to 'asterisk' database
    Driver                = MySQL
    Database              = asterisk
    Server                = localhost
    UserName              = asterisk
    Password              = welcomePort                  = 3306
    Socket                = /var/lib/mysql/mysql.sock

    验证ODBC连接器

    现在利用isql功能验证能连到你的数据库上,当你输入指令后会看到结果为1的返回值就表明连接成功了

    $echo "select 1" | isql -v asterisk-connector

    +---------------------------------------+
    | Connected!                            |
    |                                       |
    | sql-statement                         |
    | help [tablename]                      |
    | quit                                  |
    |                                       |
    +---------------------------------------+
    SQL> +------------+
    | ?column?   |
    +------------+
    | 1          |
    +------------+
    SQLRowCount returns 1
    1 rows fetched
    $ exit