1. 概述

本篇博客主要记录如何部署一台MySQL数据库服务器。这里仅仅是MySQL数据库的基本安装和配置。

2. 部署过程

本篇博客以kvm虚拟机node15作为MySQL数据库服务器。

在前面的博客中,已经约定将虚拟机console的目录/mnt/data/db,作为全局数据库服务的持久化存储目录

(笔记内链:《虚拟机console基础环境部署——工作目录准备.md》,博客园地址:https://www.cnblogs.com/liwanliangblog/p/9193891.html )

2.1 虚拟机console的NFS服务端配置

  1. 创建mysql用户和组

    笔记内链:《LDAP-openldap服务部署和测试(YUM安装).md》,博客园地址:https://www.cnblogs.com/liwanliangblog/p/9193916.html
  2. 创建数据库存储目录

    在虚拟机console的/mnt/data/db目录下,执行命令创建目录:mkdir node15_mysql_data
  3. 将该目录通过NFS文件系统共享出去

    编辑配置文件/etc/exportfs,添加以下内容:/mnt/data/db/node15_mysql_data 192.168.10.15(rw,no_root_squash,no_all_squash)
  4. 重启NFS服务器生效
  • 方式一:执行exportfs -r,重新加载配置生效;通过exportfs或者showmount -e localhost查看是否生效
  • 方式二:执行service nfs restart,重启服务生效;通过exportfs或者showmount -e localhost查看是否生效

2.2 虚拟机node15的NFS客户端配置

虚拟机node15中,执行命令:rpm -qa | egrep "nfs-utils|rpcbind",查看是否安装了NFS的环境;如果没有安装,执行命令:yum -y install nfs-utils rpcbind

2.3 虚拟机安装MySQL环境

虚拟机node15中,执行命令:yum -y install mysql mysql-client mysql-server;执行完成,会安装依赖包perl-DBI和perl-DBD-MySQL

安装完成后,先不要启动mysqld服务,进行下面的操作:

挂载虚拟机console共享的目录,执行命令:mount -t nfs 192.168.10.8:/mnt/data/db/node15_mysql_data /var/lib/mysql

因为/mnt/data/db/node15_mysql_data的属主是root,当其通过NFS挂载到node15时,因为有NFS的no_root_squash选项,因此在node15也是root用户的

在虚拟机console上,修改/mnt/data/db/node15_mysql_data属主为mysql即可

注:在执行service mysqld start时报错,报错解决方式见

完成上述配置之后,便可以通过service mysqld start开启服务,并进行以后的操作

2.4 配置MySQL

  1. 配置MySQL的root密码和登陆

    执行mysql,进入MySQL数据库系统;

    执行grant all privileges on *.* to 'root'@'localhost' identified by 'liwanliang';,授权root本地可以密码访问;

    执行grant all privileges on *.* to 'root'@'127.0.0.1' identified by 'liwanliang';,授权root本地可以密码访问;

    执行grant all privileges on *.* to 'root'@'192.168.80.8' identified by 'liwanliang';,授权root可以从虚拟机console使用密码访问;

    执行grant all privileges on *.* to 'root'@'192.168.80.15' identified by 'liwanliang';,授权root可以从虚拟机node15使用密码访问;

    执行select user,password,host from mysql.user;,查看当前可以无密码访问的授权,并进行删除;

    执行delete from mysql.user where user='' and host='localhost';

    执行delete from mysql.user where user='root' and host='node15';

    执行delete from mysql.user where user='' and host='node15';
  2. 配置MySQL默认存储引擎

    查看当前存储引擎,如下图,显示为M有ISAM为默认存储引擎





    从上述的查询中,能够看到MySQL当前默认的存储引擎是MyISAM,本系列博客中,需要将默认存储引擎改为InnoDB。操作如下:



    再次重复上面的查询,可以看到存储引擎已经修改,如下图:

  3. 配置MySQL的存储目录

    略。本篇博客并没有将存储目录修改,只想将其他目录挂载到该目录下。

  4. 配置MySQL的默认字符

    执行命令show varibales like '%char%';查询当前数据库支持和默认采用的字符集



    查看当前MySQL系统支持的全部字符集,如下图:



    修改配置文件/etc/my.cnf,保存退出后, 执行service msyqld restart重启服务

3. 错误及解决

3.1 启动失败

在挂载完成NFS,修改目录属性之后,第一次执行service mysqld start报错,报错如下:

【解决方式】:执行service iptables stop关闭防火墙;执行setenforce 0关闭selinux

继续执行service mysql start,依然启动失败,查看日志/var/log/mysqld.log



【解决方式】:执行mysql_install_db,然后执行service mysqld restart成功,如下图:

MySQL数据库服务器(YUM)安装的更多相关文章

  1. MySQL数据库服务器的架设

    导读 MySQL数据库是Linux操作系统上用得最多的数据库系统,它可以非常方便的与其它服务器集成在一起,如Apache.Vsftpd.Postfix等.下面介绍RHEL 6平台MySQL数据库服务器 ...

  2. 启用CentOS6.5 64位安装时自带的MySQL数据库服务器

    本人在虚拟机上又安装了一台linux机器,作为MySQL数据库服务器用,在安装时选择了系统自带的MySQL服务器端,以下是启用步骤. 首先开启mysqld服务 #service mysqld star ...

  3. MySQL数据库服务器安装标准

    MySQL数据库服务器安装标准 (1).BIOS优化,阵列配置 1.1:关闭CPU节能,因为服务器品牌众多,BIOS设置不相同,主要是关闭CPU节能,如C1,DELLR730,已经智能设置,直接有个p ...

  4. Cacti监控mysql数据库服务器实现过程

    Cacti监控mysql数据库服务器实现过程 2014-05-29      0个评论    来源:Cacti监控mysql数据库服务器实现过程   收藏    我要投稿 1 先在cacti服务器端安 ...

  5. Mysql数据库介绍、安装和配置文件

    Mysql数据库介绍.安装和配置文件 MySQL数据库介绍 mysql是开源关系型数据库,遵循GPL协议. mysql的特点是性能卓越且服务稳定,开源,无版本限制,成本低,单进程多线程,多用户,基于C ...

  6. Geronimo应用服务器和MySQL数据库服务器

    就是Web 2.0的全部,尽管该术语出现才几乎一年的时间,但现在好像只有烹饪杂志还没有加入到讨论Web 2.0未来出路的行列中.自从出现了里程碑式的文章"What Is Web 2.0:De ...

  7. ubuntu12.04:Mysql数据库:手动安装

    首先到mysql的下载中心上下载最新的tar.gz包: 1.在浏览器中输入http://www.mysql.com/downloads/ 进入mysql的下载中心,在这里有使用mysql开发的一些工具 ...

  8. Linux系统环境下MySQL数据库源代码的安装

    Linux系统环境下MySQL数据库源代码的安装 基本环境:CentOS Linux release 7.8.2003 (Core).MySQL5.6 一.      安装环境准备 若要在Linux系 ...

  9. Centos 升级MySQL版本或者Yum安装Mysql5.6

    Centos 升级MySQL版本或者Yum安装Mysql5.6 1.从MySQL Yum仓库下载最新的rpm文件:http://dev.mysql.com/downloads/repo/yum/Cen ...

随机推荐

  1. 我的简历 PHP Java C# 技术总监

          石先生 ID:303321266 目前正在找工作 13611326258 hr_msn@163.com 男|32 岁 (1985/08/06)|现居住北京-海淀区|12年工作经验     ...

  2. python第九十六天 ---Django(1)

    django 模块 一  安装: pip3 install django 或 python -m pip install django 二  添加环境变量 相关命令: #cmd 下 django-ad ...

  3. python第四天 三级菜单新思路

    今天是一个坎,在做三级菜单时卡住了,因为想要简洁的代码,就要用到递归函数,卡的不要不要的!不过最后在同学老师的提点帮助下,还是解决了! 2017-5-10发现之前的代码有BUG今天 修改了! 作业要求 ...

  4. SonarQube 配置 LDAP(AD域)

    安装插件 1.下载 LDAP Plugin 插件,地址:https://docs.sonarqube.org/display/SONARQUBE67/LDAP+Plugin2.将下载的插件,放到 SO ...

  5. Django框架的使用教程--类视图-中间间-模板[六]

    类视图 类视图的使用 视图函数 class class_view(View): """类视图""" def get(self, reques ...

  6. CMD(命令提示符)命令大全及网络安全课程中所用到的命令

    CMD命令大全详解: 1.arp -a 获得IP地址,MAC地址. 2.arp -d * 命令用于清空arp缓存表. 3.arp –s 网关IP 网关MAC 命令则是将网关IP地址与其相应的MAC地址 ...

  7. <20190106>千兆 小型局域网传输速率不达标问题解决

    故障描述: 三层交换机下挂了 个一层交换机, 全部交换终端包括路由器传输界面意确认全是千兆设备, 其中NAS端到 主机1 的传输速度只有100Mb, 观察主机1 的网络配置,确实连接速度是 100Mb ...

  8. 用Promise解决多个异步Ajax请求导致的代码嵌套问题【转】

    问题 前端小同学在做页面的时候,犯了个常见的错误:把多个Ajax请求顺序着写下来了,而后面的请求,对前面请求的返回结果,是有依赖的.如下面的代码所示: var someData; $.ajax({ u ...

  9. Axure RP Pro7.0的key注册码加汉化非破解

    上次我们刚分享过Axure RP Pro6.5 key注册码加汉化非破解,我还要分享一个Axure RP Pro7.0的key注册码加汉化,非破解哦. 当然方法还是不变,先用下面的密钥激活.用户名就是 ...

  10. Eclipse中安装springmvc插件

    我网上找了很多方法,常见的两种: 方法一: 先去下载spring-framework-x.x.x.RELEASE.zip包,然后解压,后面需要配置什么,具体的笔者也记不了,哈哈哈 方法二: 打开菜单栏 ...