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. 洗礼灵魂,修炼python(62)--爬虫篇—模仿游戏

    前言 <模仿游戏>这个电影相信如果你是搞IT的,即使没看过也听过吧?电影讲述了计算机之父——阿兰-图灵的一些在当时来讲算是计算机史里的里程碑事迹了.而[模仿游戏]这个名字咋一看,貌似和电影 ...

  2. 洗礼灵魂,修炼python(17)--跨平台操作三剑客—os,os.path.sys模块

    os 1.作用: 因为客户基本都是使用不同的操作系统,在不同的系统下,要完成一个项目,那必须跨平台操作,而python本来就是一个跨平台的语言,而有了os模块,则不需要在意什么系统.并且os模块是用于 ...

  3. 基于Bootstrap表单验证

    基于Bootstrap表单验证 GitHub地址:https://github.com/chentangchun/FormValidate 使用方式: 1.CSS样式 .valierror { bor ...

  4. Sql Server 判断字符串是否可以转数字

    主要是在sql server的内置系统函数ISNUMERIC的基础上,将例外的“+”.“-”.“$”等也进行判断. CREATE FUNCTION [dbo].[fn_IsNumberic]( @st ...

  5. yum-config-manager命令找不到

    安装: 命令在yum-utils 包里,安装既可以解决:yum -y install yum-utils 当然你也可以通过 dnf 替代 dnf 命令替代: 禁用仓库命令就是: dnf config- ...

  6. Conjob For hybris

    1.Defining the Job 写conjob的逻辑:core包下当做service层(要继承AbstractJobPerformable<CronJobModel>) public ...

  7. QSetting的值不能保存。

    最近在使用QSetting的时候,setting的值死活保存不下来,后来添加了如何设置后,settting的可以获取到. QCoreApplication::setOrganizationName(& ...

  8. 使用vue的v-for生成table , 给table加上序号

    现在有一个使用mybatis的分页插件生成的table,table中数据是通过vue获得的 , 前台显示使用<tr v-for="item in items"> 后台v ...

  9. Python getting started guide

    Get up in the morning. The first thing is to write a blog, although it uses machine translation, it ...

  10. 17秋 软件工程 第六次作业 Beta冲刺 Scrum1

    17秋 软件工程 第六次作业 Beta冲刺 Scrum1 各个成员冲刺期间完成的任务 重新梳理项目架构与当前进展,并且对我们的Alpha版本项目进行完整测试,将测试过程中发现的问题列入Github i ...