1.mysql下载

①进入mysql官方网站:https://www.mysql.com/ 点击进入DOWNLOADS下载页面

mysql安装教程--一步步图文讲解超详细_mysql安装

②进入下载页面后,找到mysql社区版本MySQL Community (GPL) Downloads点击进入

mysql安装教程--一步步图文讲解超详细_mysql安装_02

③进入社区版页面后,进行如下点击

mysql安装教程--一步步图文讲解超详细_mysql安装_03

④进入后,点击mysql版本归档页面

mysql安装教程--一步步图文讲解超详细_mysql安装_04

⑤进入mysql版本归档页面后选择你所需要的mysql版本、操作系统及系统版本,然后点击download即可下载

mysql安装教程--一步步图文讲解超详细_mysql安装_05

2.mysql安装规范

 

  MySQL安装方式:推荐使用二进制安装(其他安装方式:源码编译安装、yum、rpm)
  
  MySQL运行用户:mysql:mysql注意该用户是虚拟用户,只是用于mysql进程运行使用,不允许登录、不创建家目录
  
  MySQL目录规范:
  
  下载目录/server/tools
  
  系统目录/opt/mysql/mysql-xx.xx
  
  软连接ln-s/opt/mysql/mysql-xx.xx /usr/local/mysql
  
  数据目录/data/mysql/mysql+port/{data,logs}
  
  配置文件/data/mysql/mysql+port/my+port.cnf

3.二进制安装MySQL5.7.26(该方式使用于在linux系统下安装MySQL5.7和MySQL8.0的各个小版本)


  。创建MySQL虚拟用户

  
  useradd -s /sbin/nologin -M mysql #创建用户命令
  
  id mysql #查看是否创建成功
 
  mysql安装教程--一步步图文讲解超详细_mysql安装_06

  。创建目录

  mkdir -p /server/tools
  
  mkdir -p /opt/mysql
  
  mkdir -p /data/mysql/mysql3306/{data,logs}
  
  cd /server/tools #进入到该目录
 
  mysql安装教程--一步步图文讲解超详细_mysql安装_07

  。将下载的文件上传

  rz #上传mysql二进制文件
  ll #查看文件是否上传成功
  yum install -y lrzsz #如没有rz命令,可通过yum安装
  mysql安装教程--一步步图文讲解超详细_mysql安装_08

  。解压二进制包

  tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
 mysql安装教程--一步步图文讲解超详细_mysql安装_09

  。将软件部分移动到指定目录

  mv mysql-5.7.26-linux-glibc2.12-x86_64  /opt/mysql/mysql-5.7.26
mysql安装教程--一步步图文讲解超详细_mysql安装_10

  。创建软连接

  ln -s /opt/mysql/mysql-5.7.26/ /usr/local/mysql
mysql安装教程--一步步图文讲解超详细_mysql安装_11

  。删除mariadb(避免与MySQL冲突)

  rpm -e --nodeps mariadb-libs
  mysql安装教程--一步步图文讲解超详细_mysql安装_12

  。配置文件整理(该配置参数只用于测试环境,不可在生产中使用。配置参数影响着MySQL数据库的性能及安全,慎重!!!)

  vim /data/mysql/mysql3306/my3306.cnf
  
  [mysqld]
  
  user=mysql
  
  basedir=/usr/local/mysql
  
  datadir=/data/mysql/mysql3306/data
  
  socket = /data/mysql/mysql3306/mysql.sock
  
  server_id = 1
  
  port = 3306
  
  log_error=/data/mysql/mysql3306/logs/error.log
  
  log_bin=/data/mysql/mysql3306/logs/mysql-bin
  
  binlog_format=row
  
  gtid_mode=on
  
  enforce_gtid_consistency=true
  
  log_slave_updates=1
  
  max_connections=1024
  
  wait_timeout=60
  
  sort_buffer_size=2M
  
  max_allowed_packet=32M
  
  join_buffer_size=2M
  
  innodb_buffer_pool_size=128M
  
  innodb_flush_log_at_trx_commit=1
  
  innodb_log_buffer_size=32M
  
  innodb_log_file_size=128M
  
  innodb_log_files_in_group=2
  
  binlog_cache_size=2M
  
  max_binlog_cache_size=8M
  
  max_binlog_size=512M
  
  expire_logs_days=7
  
  slow_query_log=on
  
  slow_query_log_file=/data/mysql/mysql3306/logs/slow.log
  
  long_query_time=0.5
  
  log_queries_not_using_indexes=1
  

  。安装MySQL依赖包

  yum install libaio-devel -y
mysql安装教程--一步步图文讲解超详细_mysql安装_13
  yum install numactl -y
  mysql安装教程--一步步图文讲解超详细_mysql安装_14

  。更改MySQL相关目录的用户组

  chown -R mysql:mysql /data/*
  mysql安装教程--一步步图文讲解超详细_mysql安装_15

  。初始化数据库

  /usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf --initialize-insecure --user=mysql --basedir=/usr/local/mysql  --datadir=/data/mysql/mysql3306/data
  
  (MySQL8.0 、MySQL5.7都是通过mysqld进行初始化数据)
  --initialize-insecure :表示不给默认root用户创建密码,可以空密码登陆mysql安装教程--一步步图文讲解超详细_mysql安装_16

  。加入环境变量

  vim /etc/profile #vim编辑
  export PATH="/usr/local/mysql/bin:$PATH"
  mysql安装教程--一步步图文讲解超详细_mysql安装_17
  source /etc/profile #执行脚本文件,使得环境变量生效
  

  。启动MySQL

  mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf &
 

  。查看是否启动成功

  netstat -lntup |grep mysql #如有指定的mysql进程,就表示mysql启动成功
  mysql安装教程--一步步图文讲解超详细_mysql安装_18

 

  。连接mysql

  #初始化时没有给root用户指定密码,所以可以空密码连接
  mysql -uroot -p -S /data/mysql/mysql3306/mysql.sock
  mysql安装教程--一步步图文讲解超详细_mysql安装_19