linux mysql dns_震惊君的Linux之旅 ------ DNS与MYSQL基础

......DNS服务器搭建、Mariadb安装

1、简述DNS服务器原理,并搭建主-辅服务器

DNS原理

DNS是个基础服务,主要功能是将全称域名解析城IP地址

根据域名的层级,我们由上至下分为根域、顶级域、二级域、二级域的子域三级域(以此类推),每一个层级下的域名都有对应的DNS服务器,而其数据库中存放的都是该域直接下级域的 DNS名称和IP的对应关系

搭建主从服务器

安装并启动

yum install bind

systemctl start named

先搭建个主DNS服务器192.168.37.7

修改配置文件

vim /etc/named.conf

改其中两行数据,否则53端口仅监听再自己主机上,不对外服务

listen-on port 53 { localhost; };

allow-query { any; };

写数据库文件

cd /var/named/

cp -p named.localhost magedu.com.zone

加域

vim magedu.com.zone

$TTL 1D

@ IN SOA @ master admin (

0 ; serial

1D ; refresh

1H ; retry

1W ; expire

3H ) ; minimum

NS master

master A 192.168.37.7

ftp A 1.1.1.1

www CNAME webbb

webbb A 192.168.37.17

将新添加的域加入到配置文件中

vim /etc/named.rfc1912.zones

zone "magedu.com" IN {

type master;

file "magedu.com.zone";

主服务器配置完成,现在我们可以进行测试

将一台机器的DNS配置为192.168.37.7

dig ftp.magedu.com

返回之前设定的IP即为成功

ftp.magedu.com.86400INA1.1.1.1

搭建从(副服务器)192.168.37.17

安装

yum install bind

改其中两行,与之前搭建主服务时一样

vim /etc/named.conf

添加类型为(从)slave的域

vim /etc/named.rfc1912.zones

zone "magedu.com" IN {

type slave;

masters {192.168.37.7;};

file "slaves/magedu.com.zone.slave";

};

ll /var/named/slaves/可见自动生成的slave加密文件

测试从服务器

在192.168.37.6主机上测试

dig ftp.magedu.com @192.168.37.17

以下结果返回即为成功

ftp.magedu.com.86400INA1.1.1.1

若要实现主从同步,就在主服务器的数据库文件中添加从服务器的信息

NS ns2

ns2 A 192.168.37.17

2、搭建并实现智能DNS

定义ACL

配置文件中加ACL定义

vim /etc/named.conf

acl beijingnet { 192.168.37.0/24; };

acl shanghainet { 172.16.0.0/16; };

acl othernet { any; };

创建3个不同的视图view

定义三个数据库文件,主机ip(www)依次为 192.168.37.100 172.16.0.100 8.8.8.8

vim /var/named/magedu.com.zone.bj

vim /var/named/magedu.com.zone.sh

vim /var/named/magedu.com.zone.other

加view

vim /etc/named.conf

view view_beijing {

match-clients { beijingnet; };

include "/etc/named.rfc1912.zones.bj"

};

view view_shanghai {

match-clients { shan/ghainet; };

include "/etc/named.rfc1912.zones.sh"

};

view view_other {

match-clients { other; };

include "/etc/named.rfc1912.zones"

};

创建各自的区域文件

cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bj

cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.zones.sh

other就用原文件加以修改

各自添加其中内容

vim /etc/namedzone "." IN {

type hint;

file "named.ca";

};

zone "magedu.com" IN {

type master;

file "magedu.com.zone.bj";

};

systemctl restart named重启服务

测试

在192.168.37.6的主机上

dig www.magedu.com @192.168.37.7

返回

www.magedu.com.86400INA192.168.37.100

在192.168.37.7的主机上

dig www.magedu.com @172.16.0.1

返回

www.magedu.com.86400INA172.16.0.100

在本机上,即为other其他主机

dig www.magedu.com @127.0.0.1

返回

www.magedu.com. 86400IN A 8.8.8.8

3、编译安装Mariadb,并启动后可以正常登录

先安装相应的包

yum install bison bison-devel zlib-devel libcurl-devel libarchive-devel boost-devel gcc gcc-c++ cmake ncurses-devel gnutls-devel libxml2-devel openssl-devel libevent-devel libaio-devel

创建用户与数据目录

useradd –r –s /sbin/nologin –d /data/mysql/ mysql

创建数据目录

mkdir /data/mysql

加权限

chown -R mysql.mysql /data/mysql

解压源码包

tar xvf mariadb-10.2.36.tar.gz

cmake 编译安装

cd /data/mariadb-10.2.36

cmake . \

-DCMAKE_INSTALL_PREFIX=/app/mysql \

-DMYSQL_DATADIR=/data/mysql/ \

-DSYSCONFDIR=/etc/ \

-DMYSQL_USER=mysql \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DWITH_PARTITION_STORAGE_ENGINE=1 \

-DWITHOUT_MROONGA_STORAGE_ENGINE=1 \

-DWITH_DEBUG=0 \

-DWITH_READLINE=1 \

-DWITH_SSL=system \

-DWITH_ZLIB=system \

-DWITH_LIBWRAP=0 \

-DENABLED_LOCAL_INFILE=1 \

-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci

make && make install

需要等上一段时间...

环境变量

vim /etc/profile.d/mysql.sh

echo 'PATH=/app/mysql/bin:$PATH'

生效

. /etc/profile.d/mysql.sh

生成数据库文件

cd /app/mysql/

scripts/mysql_install_db --datadir=/data/mysql/ --user=mysql

显示成功

Installing MariaDB/MySQL system tables in '/data/mysql/' ...

OK

准备配置文件

mkdir /etc/mysql/

cp /app/mysql/support-files/my-huge.cnf /etc/mysql/my.cnf

加datadir信息

vim /etc/mysql/my.cnf

[mysqld]

datadir= /data/mysql

准备服务脚本,并启动服务

cd /app/mysql/support-files

cp mysql.server /etc/init.d/mysqld

systemctl enable mysqld

安装成功启动测试

systemctl start mysqld

mysql登录成功即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值