一、mysql数据库介绍
1.1、简介
1)MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。
2)MySQL的历史最早可以追溯到1979年,那时Oracle也才刚刚开始,微软的SQL Server影子都没,在2008年1月16号 MySQL被Sun公司收购。2009年,SUN又被Oracle收购
3)体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,使得许多企业选择了MySQL作为数据库
1.2、官网介绍
1.3、mysql相关产品介绍
1)Oracle MySQL Cloud Service (commercial):商业付费软件,基于MySQL企业版和Oracle云服务提供企业级 的MySQL数据库服务
2)MySQL Enterprise Edition(commercial):商业付费软件,除了提供MySQL数据库服务之外,又包含了connector(程序连接接口),partition(表分区),企业级的monitor(监控),HA(高可用),backup(备份),Scalability(扩展)等服务
3)MySQL Cluster CGE(commercial):商业付费软件,基于MySQL Cluster和企业版拥有的各项功能提供企业级的高并发 、高吞吐的数据库服务
4)MySQL Community Edition:免费社区软件,提供基础的数据库服务和其他衍生服务
5)MySQL Community Server:最流行的开源数据库管理软件,当前最新版本是8.0
6)MySQL Cluster:基于MySQL数据库而实现的集群服务,自身能提供高并发高负载等特性
7)MySQL Fabric:MySQL官方提供的关于MySQL数据库高可用和数据分片的解决方案
8)MySQL Connectors:为应用程序提供JDBC/ODBC等访问MySQL数据库的接口服务
1.4、社区版个版本区别
MySQL4.0版本:增加了子查询的支持,字符集增加UTF-8,GROUP BY语句增加了ROLLUP,mysql.user表采用了更好的加密算法,InnoDB开始支持单独的表空间
MySQL5.0版本:增加了Stored procedures、Views、Cursors、Triggers、XA transactions的支持,增加了INFORATION_SCHEMA系统数据库
MySQL5.5版本:默认存储引擎更改为InnoDB,提高性能和可扩展性,增加半同步复制
MySQL5.6版本:提高InnoDB性能,支持延迟复制
MySQL5.7版本:提升数据库性能和存储引擎,更健壮的复制功能,增加sys系统库存放数据库管理信息
二、mysql5.7安装
2.1、安装前准备
1)检查操作系统和MySQL版本的适配度
2)选择安装的MySQL版本首先判断是否要和公司其他已经安装好的MySQL保持版本一致
如果没有上述要求,则一般会安装最新版本(目前是5.7)
如果不是实验新功能性质,则不要选择development release,而要安装General Availability (GA) release(代表稳定版本,可在生产系统使用)
3)选择安装MySQL的方式二进制安装包的方式(RPM,ZIP,Tar等)
源码方式(source code)
一般会选择二进制安装方式,如果有特殊需求,比如修改一部分源码或修改MySQL深层次的配置,则会选择源码方式
2.2、二进制安装mysql5.7
1)进入安装目录,上传mysql5.7二进制安装包
2)解压二进制安装包,并命名mysql
3)创建mysql用户及组
4)创建mysql的data目录,并授权
5)初始化mysql,记住临时密码
初始化方式:
6)更改配置文件(默认配置文件为maraidb的,删除或备份即可)
7)通过命名启动mysql
8)配置环境变量
9)拷贝启动文件到/etc/init.d/,开机自启动
10)登录mysql,使用临时密码
11)修改密码
12)重新登录mysql,密码为mysql
三、mysql5.7数据目录结构
3.1、建库结构变化
执行create database语句后,会在数据目录下生成一个文件夹
3.2、建表结构变化
3.3、mysql库结构
四、mysql5.6与5.7小区别(持续)
4.1、用户信息相关
五、root密码忘记处理
5.1、停数据库
5.2、跳过授权表启动数据库
5.3、直接mysql登录数据库修改密码
方式一:
如何不刷新授权表,会报错如下:
方式二:不推荐
5.4、补充:将密码改为空
六、MySQL启动相关参数
6.1、相关参数说明
6.2、示例:修改字符集及变更数据目录
七、mysql多实例配置
启动多个mysqld实例多个配置文件
多个端口
多套数据
多个socket
多个server_id
7.1、单实例配置
1)创建软件目录,上传软件至此目录
2)解压并改名为mysql
3)建立mysql用户和组
4)创建相关目录并修改权限
5)初始化
6)书写默认配置文件
7)创建日志文件并授权(易出错)
8)替换
9)启动
10)原始sys-v管理启动(方式一)
11)使用systemd管理mysql(方式二)
注意:将原来模式启动mysqld先关闭,然后再用systemd管理。
12)配置环境变量
7.2、多实例配置
1)准备多个目录
2)准备配置文件
3)初始化三套数据
4)systemd管理多实例
5)授权
6)启动