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. datatable 列名重新排序

    1. DataTable.Columns["MONEY"].SetOrdinal[4]; 2.dt = dt.DefaultView.ToTable(false, listarr. ...

  2. MyBatis实现模糊查询的几种方式

    在学习MyBatis过程中想实现模糊查询,可惜失败了.后来上百度上查了一下,算是解决了.记录一下MyBatis实现模糊查询的几种方式. 数据库表名为test_student,初始化了几条记录,如图: ...

  3. 如何根据name和value选中radio [问题点数:40分,结帖人zzxap

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html>  <he ...

  4. butter

    题目描述 农夫John发现做出全威斯康辛州最甜的黄油的方法:糖.把糖放在一片牧场上,他知道N(1<=N<=500)只奶牛会过来舔它,这样就能做出能卖好价钱的超甜黄油.当然,他将付出额外的费 ...

  5. Spark远程调试参数

    Spark远程调试脚本: #调试Master,在master节点的spark-env.sh中添加SPARK_MASTER_OPTS变量 export SPARK_MASTER_OPTS="- ...

  6. 接上篇,php生成静态页面,加上页面时间缓存

    <?php require_once(dirname(__FILE__).'/include/config.inc.php'); ?> <?php $dosql->Execut ...

  7. yii2 对象跟数组输出数据到view视图方法

    public function actionJiekou(){ $url = 'http://wap.guoshihui.com/_static/wap/video/startVideo.mp4'; ...

  8. MetaMask/metamask-extension/mascara 的运行实现

    https://github.com/MetaMask/metamask-extension/tree/develop/mascara 找了很多个实例,基本上很少是不使用线上钱包的,只有metamas ...

  9. glVertexAttribPointer 用法简介

    在内存中采用交叉模式存储,向gpu传入顶点数据的方法  GPU: #version 100 attribute highp vec2 aPosition; attribute highp vec2 a ...

  10. 理解WebSocket心跳及重连机制(五)

    理解WebSocket心跳及重连机制 在使用websocket的过程中,有时候会遇到网络断开的情况,但是在网络断开的时候服务器端并没有触发onclose的事件.这样会有:服务器会继续向客户端发送多余的 ...