- 论坛徽章:
- 0
|
dns 使用sdb模块 启动的时候报错如下:
15-Jan-2011 16:53:47.633 unsupported database type 'mysqldb
'
15-Jan-2011 16:53:47.633 zone testdns.net/IN/other: loading zone: creating database: not found
15-Jan-2011 16:53:47.633 managed-keys-zone ./IN/other: starting load
15-Jan-2011 16:53:47.633 managed-keys-zone ./IN/other: loading from master file d9298a10d1b0735837dc4bd85dac641b0f3cef27a47e5d53a54f2f3f5b2fcffa.mkeys failed: file not found
15-Jan-2011 16:53:47.633 managed-keys-zone ./IN/other: number of nodes in database: 1
15-Jan-2011 16:53:47.633 managed-keys-zone ./IN/other: creating SOA
15-Jan-2011 16:53:47.633 no journal file, but that's OK
说是不支持数据库类型 mysqldb
我的编译方式是:
1、分别下载bind 和mysql-bind ,并解压
2、mysql-bind里面主要有mysqldb.c和mysqldb.h两个文件,分别拷贝到bind源文件的bin/named和bin/named/include/named/目录
3、编辑bind源文件目录的bin/named/Makefile.in文件,修改如下几个字段:
把
DBDRIVER_OBJS =
DBDRIVER_SRCS =
DBDRIVER_INCLUDES =
DBDRIVER_LIBS =
修改成
DBDRIVER_OBJS = mysqldb.@O@
DBDRIVER_SRCS = mysqldb.c
DBDRIVER_INCLUDES = -I'/usr/local/mysql/include/mysql/'
DBDRIVER_LIBS = -L'/usr/local/mysql/lib/mysql' -lmysqlclient -lz -lcrypt -lnsl -lm -lc -lnss_files -lnss_dns -lresolv -lc -lnss_files -lnss_dns -lresolv
其中 /usr/local/mysql/include/mysql/ 是我mysql安装路径
4、编辑bind源文件bin/named/main.c
/*
* Add calls to register sdb drivers here.
*/
/* xxdb_init(); */
mysqldb_init(); 添加这一行
/*
* Add calls to unregister sdb drivers here.
*/
/* xxdb_clear(); */
mysqldb_clear();
5、编译
./configure --with-dlz-mysql --enable-largefile --enable-threads=no --prefix=/usr/local/named --with-openssl=/usr/
make
make install
6、启动调试
/usr/local/named/sbin/named -uroot -g -d 9
为什么一直不能把mysql支持加上呢。
请赐教,谢谢 |
|