bind支持mysql
最近打算将bind的记录信息存入到数据库中去,网上找了下,原来早有老外写好了mysql-bind的补丁,重新编译bind即可实现bind支持mysql存储。(
http://mysql-bind.sourceforge.net/
)按照官方的做法是行不通的,有个小地方要修改下,下文中会提到。
环境centos5.2
yum install mysql*
装完mysql。
下载mysql-bind补丁,google下就找到了。
下载bind源码,官方网站有的下
https://www.isc.org/
解压完上述两个软件后,开始安装配置。
cp mysql-bind/mysqldb.c bind9-9.5.1.dfsg.P2/bin/named/
cp mysql-bind/mysqldb.h bind9-9.5.1.dfsg.P2/bin/named/include/
注:bind9-9.5.1.dfsg.P2为bind的版本号,bind9.4以上都支持。
mysql_config –cflags
结果:-I/usr/include/mysql -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-strict-aliasing -fwrapv
mysql_config –libs
结果:-L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -L/usr/lib -lssl -lcrypto
# vi bind9-9.5.1.dfsg.P2/bin/named/Makefile.in
Line 29: DBDRIVER_OBJS =
[email=mysqldb.@O]mysqldb.@O[/email]
@
Line 30: DBDRIVER_SRCS = mysqldb.c
Line 31: DBDRIVER_INCLUDES = -I/usr/include/mysql
Line 32: DBDRIVER_LIBS = -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -L/usr/lib -lssl -lcrypto
# vi bind9-9.5.1.dfsg.P2/bin/named/main.c
Line 76: #include "mysqldb.h"
Line 729: mysqldb_init(); (提示:xxdb_init()字样的下面)
Line 756: mysqldb_clear(); (提示:xxdb_clear()字样的下面)
上述步骤完全可以参照官网的操作步骤照做。
下面这步很关键,不做修改的话,会导致编译失败。(搞了三天才搞定的问题)
change line 41 of mysqldb.c from #include to #include "include/mysqldb.h"(一个新加坡的朋友的blog上看到的,版权期间转载为E文,不翻译了
)
自此配置前的工作完成
./configure --prefix=/usr/local/named --enable-threads --disable-openssl-version-check
make&&make install顺利完成。
将bind的记录存入mysql有两点好处,一来省去了主从更新的麻烦配置,直接将主dns和从dns的mysql进行主从复制即可;二点是修改记录后不需要重新加载,同时便于写php管理界面。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/70648/showart_1998507.html
bind支持mysql的更多相关文章
- EntityFramework.Extended 支持 MySql
EntityFramework.Extended 默认不支持 MySql,需要配置如下代码: [DbConfigurationType(typeof(DbContextConfiguration))] ...
- .NET高性能框架Chloe.ORM-完美支持MySql
扯淡 这是一款轻量.高效的.NET C#数据库访问框架(ORM).查询接口借鉴 Linq(但不支持 Linq).借助 lambda 表达式,可以完全用面向对象的方式就能轻松执行多表连接查询.分组查询. ...
- oracle数据库不支持mysql中limit功能
oracle数据库不支持mysql中limit功能,但可以通过rownum来限制返回的结果集的行数,rownum并不是用户添加的字段,而是oracle系统自动添加的. (1)使查询结果最多返回前10行 ...
- 支持MySql的数据库自动分表工具DBShardTools发布
支持MySql的数据库自动分表工具DBShardTools发布 前段时间参与了公司的一个项目,这个项目的特点是数据量.访问量都比较大,考虑使用数据库水平分表策略,Google了大半天,竟然没有找到分表 ...
- 《物联网框架ServerSuperIO教程》-19.设备驱动和OPC Client支持mysql、oracle、sqlite、sqlserver的持久化。v3.6.4版本发布
19.设备驱动和OPC Client支持mysql.oracle.sqlite.sqlserver的持久化 19.1 概述 ServerSuperIO支持设备驱动和OPC Client采集的数 ...
- 编译GDAL支持MySQL
GDAL支持MySQL需要MySQL的库才可以,编译很简单,修改nmake.opt文件中对应的MySQL的库的路径和lib即可. nmake.opt文件中397行左右,如下: # MySQL Libr ...
- 让EntityFramework.Extended支持MySql
EF:Entity Framework EFEL:Entity Framework Extended Library EFEL5.0时代是不支持MySql的,现在升级到6.0之后,已经支持MySql了 ...
- nopCommerce如何支持MySQL
此方法支持nopCommerce2.4以上版本(缺少的代码,可参照nopCommerce2.6源码) nopCommerce 4.1 如何支持Mysql 请看 Url: http://www.nop ...
- Visual Studio2015 、2017中如何支持MYSQL数据源
原文:Visual Studio2015 .2017中如何支持MYSQL数据源 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/ght886/arti ...
随机推荐
- jqGrid清空表格
$("#jqGrid").jqGrid("setGridParam",{ datatype:'local', data : [], page:1 }).trig ...
- 洛谷 题解 P2502 【[HAOI2006]旅行】
由于此题边数比较小,所以可以先给边排个序,然后跑m遍最小生成树,每跑一次删除一条边,找最优解. 防TLE技巧 把边按从小到大的顺序排好,那么只要当前无法联通,那么后面也无法联通 最优解找法 doubl ...
- elasticsearch安装ik
https://github.com/medcl/elasticsearch-analysis-ik/releases下载对应的ik plugins/目录下创建analysis-ik,再将上述中的zi ...
- BIO和NIO实现文件复制
普通文件复制 public void copyFile() throws Exception{ FileInputStream fis=new FileInputStream("C:\\Us ...
- poj1426(暴力dfs)
题目链接:https://vjudge.net/problem/POJ-1426 题意:给出n(1<=n<=200),求出全部由01组成的能整除n的正整数. 思路:此题在unsigned ...
- emacs 常用命令
C stands for Ctrl and M stands for Alt REFERENCE FORM EMACS TUTORIAL 表述不一定正确,仅供参考,主要是要多实践,一开始可能会不习惯 ...
- linux 从远程服务器拷贝文件
1.从服务器复制文件到本地: scp root@192.168.1.100:/data/test.txt /home/myfile/ 2.从服务器复制文件夹到本地: scp -r root@192.1 ...
- 【KMP】OKR-Periods of Words
[KMP]OKR-Periods of Words 题目描述 串是有限个小写字符的序列,特别的,一个空序列也可以是一个串.一个串P是串A的前缀,当且仅当存在串B,使得A=PB.如果P≠A并且P不是一个 ...
- 一个MySQL JDBC驱动bug引起的血案
1.1 问题背景 公司是做电商系统的,整个系统搭建在华为云上.系统设计的时候,考虑到后续的用户和订单数量比较大,需要使用一些大数据库的组件.关系型数据库这块,考虑到后续数据量的快速增长,不是 ...
- ideaIU-2019.2.exe-安装目录和设置目录结构的说明
一.查看安装目录结构 bin: 容器,执行文件和启动参数等 help:快捷键文档和其他帮助文档 jbr: 含有java运行环境 lib:idea 依赖的类库 license:各个插件许可 plugin ...