; MySQL与nfs的实验 | Linux运维部落

MySQL与nfs的实验

(1) 创建一个共享mydata,路径为/mysql/data,客户端1挂载至/mydata;而后客户端1主机安装mysqlmariadb,将数据目录设定为/mydata,要确保mysql服务能正常 运行,但数据目录位于samba server上;

(2) 客户端2主机使用类似客户端1主机的方式挂载mydata共享至本地的/mydata目录,而后,直接安装mysqlmariadb server,设定其数据目录为/mydata;测试

(a) 客户端1 mysql服务运行时,客户端2mysql服务能否启动?

(b) 客户端1 mysql服务停止时,客户端2mysql服务能否启动?

 

准备三台主机,server-1(10.1.64.11),server-2(10.1.64.12)server-3(10.1.64.13)

Server-1

①将server-1安装nfs

service rpcbind status

service rpcbind start

vim  /etc/exports

/mysql/data      10.1.64.12(r,w)     10.1.64.13(r,w)

Systemctl restart nfs

⑥创建共享目录

  Mkdir -p /mysql/data

⑦创建用户mysql,规定其主ID27

  并将/mysql/data目录的属主属组改为mysql

Server-2

①在server-2中安装mariadb-server

②创建用户mysql,用户名可以不一样。但是其主ID一定要是27

③创建mysql的数据存放目录mydata,并将其属主属组改为新创建的用户mysql

④修改配置文件/etc/my.cnf

      如果是用yum安装的mariadb,有可能会没有/etc/my.cnf配置文件,需要将my.cnf

  的模板文件/usr/shane/mysql/my-large.cnf拷贝到/etc/,并改名为my.cnf

      Vim  /etc/my.cnf,并指定mydata为数据库的数据存放路径。

       datadir = /mydata/

⑤将server-1/mysql/data目录挂载到server-2/mydata目录上。

      Mount -t nfs 10.1.64.11:/mysql/data  /mydata

⑥挂载成功后重启mariadb服务。查看端口,顺利启动。

Server-3

          Server-3的配置跟server-2的配置相同。

 

总结:

      server-2mariadb服务开启时,server-3mariadb服务就开启不了,当server-2

  Mariadb服务关闭后,server-3mariadb就可以顺利启动。

      因此,当将两个数据库的数据存放路径都指向同一个nfs的挂载点时,两个数据库不能

  同时启动。

 

遇到的问题:

在修改数据库的配置文件时,配置的是/etc/my.cnf.d/server.cnf,配置完成后,两个数据库都

顺利重启了,但是当进入/mysql/data目录中却没有生成mysql相关的配置。意味着数据库数据

指定路径失败。

通过翻阅笔记,发现系统默认读取的配置文件应该是/etc/my.cnf。找到该配置文件的示例

目录/usr/share/mysql/my-large.cnf,将其复制到/etc/并改名为my.cnf。再次修改my.cnf文件,将

Mydata目录指定为mariadb的数据存放路径。

启动mariadb服务,查看mydata目录,生成了mariadb相关的文件。进入nfs/mysql/data

样有数据库的相关配置文件。

原创文章,作者:zzd,如若转载,请注明出处:http://www.178linux.com/56227

联系我们

400-080-6560

在线咨询:点击这里给我发消息

邮件:1660809109@qq.com

工作时间:周一至周五,9:30-18:30,节假日同时也值班