nfs实验

实验要求:

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

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

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

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

实验步骤:

    

PC1NFS服务器,配置:

1)创建共享目录

~]# mkdir -p /mysql/data/mydata

2)创建本地用户,UID必须是27

~]# useradd -M -r -s /sbin/nologin -u 27 mysql

3)设置MySQL用户对共享目录有读写权限

~]# chown mysql:mysql /mysql/data/mydata/

4)修改NFS配置文件

~]# vi /etc/exports

/mysql/data/mydata      10.1.0.0/16(rw,root_squash)

5)启动服务

~]# yum install nfs-utils 最小化安装没有rpcbind,需要安装这个包

~]# systemctl start rpcbind 先启动rpc,不然会报错

~]# systemctl start nfs

 

PC2centos 7)为客户端1,配置:

1)安装nfs工具

]# yum install -y nfs-utils

2)查看网络中的NFS共享目录

]# showmount -e 10.1.12.12

3)创建本地挂载目录

]# mkdir /mydata

4)挂载nfs网络共享目录

]# mount -t nfs 10.1.12.12:/mysql/data/mydata /mydata/

5)安装MySQL数据库(centos 6mysql

]# yum install -y mariadb-server

6)将数据目录设定为挂载目录

]# vi /etc/my.cnf

datadir=/mydata

7)启动数据库

~]# systemctl start mariadb

8)查看 /mydata目录下有没有生成MySQL的文件

]# ls /mydata/

PC3centos7)为客户端2,配置:

PC2的操作一样

安装nfs-utils

创建本地挂载目录

挂载nfs网络共享目录

安装MySQL数据库

MySQL数据库目录设置为挂载目录

然后尝试启动mysql

然后关闭PC2 上面的MySQL,再启动,看能否成功

结论:俩个MySQL只能同时启动一个,

 

实验中遇到的问题:

在nfs服务器上对MySQL用户做授权时,

理论上,nfs服务器上的系统用户对共享目录有读写执行权限(做setfacl),并且在配置文件中也给了rw权限时,另一台挂载共享目录的主机上,

相同UID GID 等 ]#id USER 命令结果相同的用户,也可以对共享目录有读写执行权限,也就是说:MySQL可以启动

但是MySQL不能启动是为什么?此时,/etc/exports文件中参数是(rw,no_root_squash)。root也可以对共享目录有全套权限。

当我把facl权限去掉,并将共享目录的属主和属组改为MySQL时,MySQL服务就可以启动了!

理论上,这俩中方法是用户对目录都有全套权限,而且root用户也是全套权限,但为什么,facl权限就无法启动???

没学好,向大神求解!

问题二

在特殊情况下,俩台MySQL服务器可同时启动!

1)在PC1上启动MySQL;

2)在nfs服务器上删除共享目录中MySQL启动时生成的文件;若在PC1上删除,会报错,MySQL文件夹不能被删除,里面有nfs的文件

3)PC1 上的MySQL服务已经起来,在PC2上启动MySQL就行,同时在PC2的MySQL创建数据库和表,在PC1的MySQL中也可以查看,在NFS服务器的共享目录中也有库文件生成

但是在PC2上创建的表中的内容,另一个PC上的MySQL不能查看内容,只能看到表的名称

问题三

如果没有关闭selinux的话,会有selinux安全上下文标签,这也会导致无法启动MySQL服务器

如果是showmount找不到共享目录,一般是iptables的问题,iptables -F清空一下就好了

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

(0)
cszdz123cszdz123
上一篇 2016-10-24 09:09
下一篇 2016-10-24 09:09

相关推荐

  • Linux前端包管理器—yum

    Yum(Yellow dog Updater, Modified)由Duke University团队,修改Yellow Dog Linux的Yellow Dog Updater开发而成,是一个基于RPM包管理的字符前端软件包管理器。能够从指定的服务器自动下载RPM包并且安装,可以处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。 介…

    Linux干货 2016-08-29
  • samba

    FTP,SAMBA,NFS之间的区别 FTP        Windows/linux/unix/macOS等        发布网站,文件共享              Tcp/21 Samba  …

    Linux干货 2016-11-01
  • linux系统基础目录结构及功能说明

    linux系统基础目录结构及功能说明 [root@localhost /]# ls bin boot dev etc home host lib lib64 media mnt opt proc root run sbin srv sys tmp usr var /bin:所有用户可用的基本命令程序文件;/sbin:供系统管理使用的工具程序;/boot:引导…

    Linux干货 2018-03-04
  • 第七周 练习

    1. 请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 集线器:集线器的主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离网桥:是早期的两端口二层网络设备,用来连接不同网段。网桥的两个端口分别有一条独立的交换信道,      不是共享一条背板总线,可隔…

    Linux干货 2016-12-13
  • 马哥教育网络班20期第3周课程练习

    答: 1、 [root@totooco ~]# who | cut -c1-9 | sort -u 2、 [totooco@totooco ~]$ who | cut -c1-9 | head -1 3、 [root@totooco ~]# cat /etc/passwd | cut -d: -f7 | grep -v /sbin/nologin | sor…

    Linux干货 2016-06-23
  • 7.28_Linux_ext数据结构inode的原理浅析、软硬链接的区别

    inode表结构浅析 下图以ext文件系统为参考,以4k块大小分区,简单描述一下ext文件系统的数据结构原理,如果有任何错误,烦请各位指出 inode 索引节点 硬盘上的每个磁道被等分为若干个弧段,这些弧段便是磁盘的扇区。硬盘的读写以扇区为基本单位。 扇区的大小,是2的N次方倍。分区的大小可以有多样,1k、2k、4k…以4k块大小来说明。4k块大…

    Linux干货 2016-08-03