掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流
數(shù)據(jù)綁定是當今互聯(lián)網(wǎng)應用開發(fā)中不可或缺的一部分,它是實現(xiàn)數(shù)據(jù)展示的一種技術。其中最常見的技術是將數(shù)據(jù)綁定到前端頁面上,從而方便用戶查看和操作。在Linux系統(tǒng)中,我們可以使用Bind0工具實現(xiàn)數(shù)據(jù)綁定。本文將詳細介紹如何在Linux操作系統(tǒng)中使用Bind0對數(shù)據(jù)進行綁定。

公司主營業(yè)務:成都做網(wǎng)站、成都網(wǎng)站建設、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)建站是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)建站推出赤峰免費做網(wǎng)站回饋大家。
一、什么是Bind0
Bind0是一個可以在Linux系統(tǒng)上進行數(shù)據(jù)綁定的工具,它可以通過命令行快速地處理數(shù)據(jù)綁定的操作,從而提高開發(fā)效率。
二、如何安裝Bind0
在Linux系統(tǒng)上使用Bind0需要先安裝該工具,可以通過以下命令在終端中進行安裝:
sudo apt-get install bind0
安裝完成后,可以通過以下命令查看是否安裝成功:
bind0 –version
如果顯示Bind0的版本號,則說明安裝成功。
三、通過Bind0進行數(shù)據(jù)綁定
在對數(shù)據(jù)進行綁定之前,我們需要準備好數(shù)據(jù)源,這里以MySQL數(shù)據(jù)庫為例。
1. 數(shù)據(jù)庫連接
在終端中輸入以下命令連接到MySQL數(shù)據(jù)庫:
mysql -u root -p
輸入密碼后,即可連接到數(shù)據(jù)庫。接著輸入以下命令創(chuàng)建一個新的數(shù)據(jù)庫:
CREATE DATABASE mytest;
切換到該數(shù)據(jù)庫:
USE mytest;
創(chuàng)建一個數(shù)據(jù)表:
CREATE TABLE users (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
eml VARCHAR(50) NOT NULL,
PRIMARY KEY (id)
);
2. 數(shù)據(jù)綁定
接下來,我們就可以通過Bind0工具進行數(shù)據(jù)綁定了。
需要創(chuàng)建一個ON文件,用于描述數(shù)據(jù)的結構,例如:
{
“name”: “”,
“eml”: “”,
“newName”: “”,
“newEml”: “”
}
其中,name和eml是用于展示數(shù)據(jù)的字段,newName和newEml是用于修改數(shù)據(jù)的字段。接著,我們需要將該ON文件與MySQL數(shù)據(jù)庫進行綁定,可以通過以下命令完成:
bind0 bind –db=mysql –database=mytest –table=users –id=id –json=users.json
其中,–db=mysql表示使用MySQL作為數(shù)據(jù)源,–database=mytest表示綁定到mytest數(shù)據(jù)庫,–table=users表示綁定到users表,–id=id表示使用id字段作為數(shù)據(jù)的唯一標識符,–json=users.json表示使用users.json文件描述數(shù)據(jù)的結構。
完成綁定后,我們可以通過以下命令查看綁定狀態(tài):
bind0 status
如果顯示已經(jīng)綁定成功,則說明可以對數(shù)據(jù)進行操作了。
3. 數(shù)據(jù)操作
接下來,我們可以通過以下命令對數(shù)據(jù)進行操作:
– 獲取所有數(shù)據(jù):
bind0 get
– 根據(jù)id獲取單個數(shù)據(jù):
bind0 get –id=1
– 根據(jù)字段獲取數(shù)據(jù):
bind0 get –column=name –value=Tom
– 添加一條數(shù)據(jù):
bind0 add –json='{“name”:”Tom”,”eml”:”[email protected]”}’
– 更新一條數(shù)據(jù):
bind0 update –id=1 –json='{“name”:”Tom”,”eml”:”[email protected]”}’
– 刪除一條數(shù)據(jù):
bind0 delete –id=1
四、
通過上述步驟,我們可以在Linux系統(tǒng)中使用Bind0進行數(shù)據(jù)綁定,從而更加高效地處理數(shù)據(jù)操作。Bind0的操作簡單,易用,可以快速地實現(xiàn)數(shù)據(jù)綁定,非常適合在Linux系統(tǒng)上進行互聯(lián)網(wǎng)應用開發(fā)。
相關問題拓展閱讀:
addr.sin_addr.s_addr=htons(SERVER_PORT);
這個是IP地址,你給的端口號。
BIND安裝
軟件下載地址:
,目前最新版本是BIND 9.8.1-P1。
安裝依賴:
yum -y install gcc openssl-devel
開始安ind.
wget
tar xzf bind-9.8.1-P1.tar.gz
cd bind-9.8.1-P1
./configure –prefix=/usr/local/bind
make && make install
執(zhí)行完成后,bind已經(jīng)安裝到了/usr/local/bind目錄。
配置主dns服務器
配置bind主要是兩種文件,一是主配置文件named.conf,二是區(qū)域文件zone(包括正解析,反解析)。
在下面的配置中,我們的主dns服務器是ns1.qbtop.com 23.19.81.191,從dns服務器是ns2.qbtop.com 23.19.81.194(這兩個dns都已經(jīng)在godaddy注冊好了)。
下面操作僅在主dns服務器23.19.81.191執(zhí)行。
主配置文件named.conf
首先執(zhí)行rndc-confgen -a生成/etc/rndc.key密鑰文件。
/usr/local/bind/in/rndc-confgen -a
vi /usr/local/bind/etc/named.conf
寫入如下內(nèi)容:
include “/usr/local/bind/etc/rndc.key”;
controls { inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { “rndckey”; }; };
logging {
channel default_syslog { syslog local2; severity notice; };
channel audit_log { file “/var/log/bind.log”; severity notice; print-time yes; };
category default { default_syslog; };
category general { default_syslog; };
category security { audit_log; default_syslog; };
category config { default_syslog; };
category resolver { audit_log; };
category xfer-in { audit_log; };
category xfer-out { audit_log; };
category notify { audit_log; };
category client { audit_log; };
category network { audit_log; };
category update { audit_log; };
category queries { audit_log; };
category lame-servers { audit_log; };
};
options {
directory “/usr/local/bind/etc”;
pid-file “/usr/local/bind/var/run/bind.pid”;
transfer-format many-answers;
interface-interval 0;
allow-query { any; };
};
zone “qbtop.com” {
type master;
file “qbtop.com.zone”;
allow-transfer { 23.19.81.194; };
};
zone “81.19.23.in-addr.arpa” {
type master;
file “81.19.23.in-addr.arpa”;
allow-transfer { 23.19.81.194; };
};
named.conf文件說明:
上面的named.conf文件包括三部分:key,controls,logging,options,zone。
logging:設置日志服務器和日志信息的發(fā)送地。
options:控制服務器的全局配置選項和為其它語句設置默認值
zone:定義一個域,比如正解析域和反解析域。
logging是定義日志的,不需要深究,主要是options和zone。
在options中:
directory “/usr/local/bind/etc”:定義bind的工作目錄為/usr/local/bind/etc,配置文件中所有使用的相對路徑,指的都是在這里配置的目錄下。
pid-file “/usr/local/bind/var/run/bind.pid”:把bind程序運行的pid寫入文件bind.pid。
transfer-format many-answers:使用更加有效的域傳輸格式many-answers。
allow-query { any; }:允許所有用戶查詢dns。
在zone中:
這里定義了兩個zone,一個是正解析zone qbtop.com,一個是反解析zone 81.19.23.in-addr.arpa。
他們的參數(shù)基本相同:
type master:定義dns服務器為主dns。
file “qbtop.com.zone”:定義此zone的文件名。
allow-transfer { 23.19.81.194; }:允許向從dns 23.19.81.194傳輸dns數(shù)據(jù)。
唯一不同的是zone名稱的定義,正解析zone名稱的定義是受權的域名,可以是頂級域名,也可以是二級域名,或多級。反解析zone名稱定義規(guī)定前部分ip倒著寫。如ip 192.168.1.2,名稱定義為1.168.192.in-addr.arpa。
正解析qbtop.com.zone
vi /usr/local/bind/etc/qbtop.com.zone
寫入如下內(nèi)容:
$TTL 3600
@ IN SOA ns1.qbtop.com. hostmaster.qbtop.com. (
; Serial
3600; Refresh
900; Retry
; Expire
3600 ); Minimum
@ IN NS ns1.qbtop.com.
@ IN NS ns2.qbtop.com.
ns1 IN A 23.19.81.191
ns2 IN A 23.19.81.194
aaa IN A 23.19.81.191
bbb IN A 23.19.81.191
文件說明:
$TTL 3600:指示為每個沒有特殊TTL設置的RR給出了一個默認的TTL。
@ IN SOA ns1.qbtop.com. hostmaster.qbtop.com. (
; Serial
3600; Refresh
900; Retry
; Expire
3600 ); Minimum
定義SOA記錄,包括Zone的名字,一個技術聯(lián)系人和各種不同的超時值。
@ IN NS ns1.qbtop.com.
@ IN NS ns2.qbtop.com.
設置兩個ns記錄ns1.qbtop.com和ns2.qbtop.com。
ns1 IN A 23.19.81.191
ns2 IN A 23.19.81.194
aaa IN A 23.19.81.191
bbb IN A 23.19.81.191
設置主機為ns1,ns2,aaa和bbb的A記錄。
反解析文件81.19.23.in-addr.arpa
反解析zone可以不設置。
vi /usr/local/bind/etc/81.19.23.in-addr.arpa
寫入如下內(nèi)容:
$TTL 3600
@ IN SOA ns1.qbtop.com. hostmaster.qbtop.com. (
; Serial
3600; Refresh
900; Retry
; Expire
3600 ); Minimum
@IN NS ns1.qbtop.com.
@IN NS ns2.qbtop.com.
191INPTRns1.qbtop.com.
194INPTRns2.qbtop.com.
說明:
上部分是定義SOA記錄,下部分是設置IP反解析。
如設置IP 23.19.81.191反解析成ns1.qbtop.com,23.19.81.194反解析成ns2.qbtop.com。
配置從DNS服務器
下面我們來配置從DNS服務器。配置從DNS服務器只需要配置主配置文件named.conf,zone文件不需配置,因為這是從主DNS服務器獲取的。
首先建立目錄slaves用來存放從主dns獲取的zone文件。
mkdir /usr/local/bind/etc/slaves
寫入如下內(nèi)容:
logging {
channel default_syslog { syslog local2; severity notice; };
channel audit_log { file “/var/log/bind.log”; severity notice; print-time yes; };
category default { default_syslog; };
category general { default_syslog; };
category security { audit_log; default_syslog; };
category config { default_syslog; };
category resolver { audit_log; };
category xfer-in { audit_log; };
category xfer-out { audit_log; };
category notify { audit_log; };
category client { audit_log; };
category network { audit_log; };
category update { audit_log; };
category queries { audit_log; };
category lame-servers { audit_log; };
};
options {
directory “/usr/local/bind/etc”;
pid-file “/usr/local/bind/var/run/bind.pid”;
transfer-format many-answers;
interface-interval 0;
allow-query { any; };
};
zone “qbtop.com” {
type slave;
file “slaves/qbtop.com.zone”;
masters { 23.19.81.191; };
};
zone “81.19.23.in-addr.arpa” {
type slave;
file “slaves/81.19.23.in-addr.arpa”;
masters { 23.19.81.191; };
};
文件說明:
從dns跟主dns主要的區(qū)別是zone的定義,type slave定義此dns服務器為從dns,masters { 23.19.81.191; }定義主dns的IP。
啟動BIND
1、在啟動BIND之前,我們需要執(zhí)行/usr/local/bind/in/named-checkconf檢查named.conf配置文
件,和執(zhí)行/usr/local/bind/in/named-checkzone zone名稱
zone文件名,如/usr/local/bind/in/named-checkzone qbtop.com
/usr/local/bind/etc/qbtop.com.zone。
然后調(diào)試模式啟動bind,/usr/local/bind/in/named -g,g參數(shù)的意思是前臺執(zhí)行bind,這會輸出啟動的信息,發(fā)現(xiàn)沒有嚴重的錯誤后,再把g參數(shù)刪除重新以/usr/local/bind/in/named方式后臺啟動bind。
2、設置開機啟動,在/etc/rc.d/rc.local中加入/usr/local/bind/in/named。
手動添加記錄
1、直接添加刪除或修改zone文件里的記錄
2、執(zhí)行rndc reload zone名稱重載,如rndc reload qbtop.com
關于bind0 linux的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
成都創(chuàng)新互聯(lián)建站主營:成都網(wǎng)站建設、網(wǎng)站維護、網(wǎng)站改版的網(wǎng)站建設公司,提供成都網(wǎng)站制作、成都網(wǎng)站建設、成都網(wǎng)站推廣、成都網(wǎng)站優(yōu)化seo、響應式移動網(wǎng)站開發(fā)制作等網(wǎng)站服務。

我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流