一、下载MySQL二进制软件包

下载连接:MYSQ安装包下载

官网MySQL有四个版本:GA版、DMR版、RC版、Beta版。一般生产和测试环境使用GA版(常规可用的版本,经过bug修复测试)

二、安装前系统环境检测

1、SELinux和系统防火墙iptables需要关闭

2、I/O调度系统默认是cfq模式,强烈建议使用deadline模式

  1. cat /sys/block/sda/queue/scheduler
  2. #cfq完全公平队列;noop电梯式调度;deadline截止时间调度

3、swap分区的设置

不分配swap或分配4GB的swap

swappiness控制如何使用swap分区,0表示最大限度使用物理内存,然后才使用swap,可能导致内存溢出,导致MySQL被意外kill掉;100,积极使用swap,把内存数据及时搬到swap,不建议

  1. cat /proc/sys/vm/swappiness
  2. 编辑 /etc/sysctl.conf 加入vm.swappiess的值

4、文件系统的选择 [xfs]

5、操作系统限制

  1. ulinit -a
  2. open files和max user processes,建议均设置为65535
  3. vim /etc/security/limits.conf
  4. * soft nproc 65535
  5. * hard nproc 65535
  6. * soft nofile 65535
  7. * hard nofile 65535

6、numa需要关闭

  1. numa --interleave=all /usr/local/mysql/bin/mysqld_safe -defaults-file=/etc/my.cnf &

关闭numa,可以更好地分配内存,不需要采用swap的方式来获取内存

可以在BIOS、操作系统或者在数据库启动过程中关闭

  1. yum install numactl
  2. numastat -H 、lscpu

三、开始进行安装

1、对下载下来的软件包进行MD5校验,确保下载过程中没有任何的问题

  1. [root@wjq1 Packages]# md5sum mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
  2. 075dccd655e090ca999e2c8da3b67eb7 mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

2、创建用户和组

  1. [root@wjq1 Packages]# groupadd mysql
  2. [root@wjq1 Packages]# useradd -g mysql mysql -s /sbin/nologin

3、将软件包移到/usr/local目录下

  1. [root@wjq1 Packages]# mv mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz /usr/local/

4、解压mysql软件包

  1. [root@wjq1 Packages]# cd /usr/local/
  2. [root@wjq1 local]# tar zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

5、创建软连接,方便日后升级

  1. [root@wjq1 local]# ln -s mysql-5.7.24-linux-glibc2.12-x86_64 mysql

6、创建mysql相关的目录并修改权限

  1. [root@wjq1 ~]# mkdir -p /data/mysql/3306/{data,log,tmp}
  2. [root@wjq1 ~]# chown -R mysql:mysql /usr/local/mysql
  3. [root@wjq1 ~]# chown -R mysql:mysql /data/mysql/

7、编辑mysql的配置文件

  1. [root@wjq1 ~]# vim /etc/my.cnf
  2. [client]
  3. port=3306
  4. socket=/tmp/mysql3306.sock
  5. [mysql]
  6. prompt=\\U [\\d]>
  7. [mysqld]
  8. user=mysql
  9. basedir = /usr/local/mysql
  10. sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
  11. character_set_server = utf8mb4
  12. datadir=/data/mysql/3306/data
  13. port=3306
  14. server_id=330610
  15. socket=/tmp/mysql3306.sock
  16. log-output=file
  17. slow_query_log = 1
  18. long_query_time = 1
  19. slow_query_log_file = /data/mysql/3306/log/slow.log
  20. log-error = /data/mysql/3306/log/error.log
  21. pid-file = /data/mysql/3306/tmp/mysql3306.pid
  22. binlog_format = mixed
  23. log-bin = /data/mysql/3306/log/mysql3306.bin
  24. #gtid-mode = ON
  25. #enforce-gtid-consistency = ON
  26. #log-slave-updates = ON

8、初始化数据库

  1. [root@wjq1 ~]# cd /usr/local/mysql/bin/
  2. [root@wjq1 bin]# ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql/3306/data --user=mysql --initialize
  3. #--initialize参数,生成一个临时数据库初始密码,记录在log-error里面

9、启动数据库

  1. [root@wjq1 bin]# ./mysqld_safe --defaults-file=/etc/my.cnf &
  2. [1] 7481
  3. [root@wjq1 bin]# 2018-11-05T07:10:36.482523Z mysqld_safe Logging to '/data/mysql/3306/log/error.log'.
  4. 2018-11-05T07:10:36.511901Z mysqld_safe Starting mysqld daemon with databases from /data/mysql/3306/data

10、验证是否启动成功

  1. [root@wjq1 bin]# netstat -tuplan | grep mysqld
  2. tcp6 0 0 :::3306 :::* LISTEN 7739/mysqld

11、修改root用户的密码

  1. [root@wjq1 ~]# cat /data/mysql/3306/log/error.log | grep password
  2. 2018-11-05T07:10:19.979308Z 1 [Note] A temporary password is generated for root@localhost: F?IJVgCaa1h4
  3. [root@wjq1 bin]# ./mysql -u root -p
  4. Enter password:
  5. Welcome to the MySQL monitor. Commands end with ; or \g.
  6. Your MySQL connection id is 2
  7. Server version: 5.7.24-log
  8. Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
  9. Oracle is a registered trademark of Oracle Corporation and/or its
  10. affiliates. Other names may be trademarks of their respective
  11. owners.
  12. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  13. root [(none)]>select user,host from mysql.user;
  14. ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
  15. root [(none)]>set password='XXXX@2019';
  16. Query OK, 0 rows affected (0.00 sec)

四、MySQL数据库root密码丢失的问题

(1)kill掉mysql进程(共两个进程)

(2)重启mysql:./mysqld_safe –defaults-file=/etc/my.cnf –skip-grant-tables &

(3)连接到mysql

(4)设置新的密码并刷新权限

use mysql

update user set authentication_string=password(‘root123′) where user=’root’;

flush privileges;

(5)重启数据库

MYSQL二进制5.7.安装的更多相关文章

  1. shell安装MySQL二进制包

    现在解压MySQL二进制包,稍作配置,就能用了,安装速度快,安装来练习最好不过了,哈哈 该脚本只是安装二进制的MySQL包,my.cnf只修改了简单的选项,没有过多进行设置,若朋友们用我的脚本安装作为 ...

  2. mysql二进制包安装与配置实战记录

    导读 一般中小型网站的开发都选择 MySQL 作为网站数据库,由于其社区版的性能卓越,搭配 PHP .Linux和 Apache 可组成良好的开发环境,经过多年的web技术发展,在业内被广泛使用的一种 ...

  3. 二进制方式快速安装MySQL数据库命令集合

    二进制方式快速安装MySQL数据库命令集合 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 1.安装mysql ls mysql ...

  4. 【MySQL】Linux下MySQL 5.5、5.6和5.7的RPM、二进制和源码安装

      [MySQL]Linux下MySQL 5.5.5.6和5.7的RPM.二进制和源码安装 1.1  BLOG文档结构图 1.2  前言部分 1.2.1  导读和注意事项 各位技术爱好者,看完本文后, ...

  5. mysql二进制安装及基础操作

    mysql二进制安装及基础操作 环境说明: 系统版本    CentOS 6.9 x86_64 软件版本    mysql-5.6.36-linux-glibc2.5-x86_64 1.安装 采用二进 ...

  6. mySQL的安装过程---二进制和源码安装

    安装 mysql 源码包安装 优化基础源 [root@db03 ~]# vim /etc/yum.repos.d/CentOS-Base.repo 安装依赖包 [root@db03 ~]# yum i ...

  7. MySQL二进制包安装及启动问题排查

    环境部署:VMware10.0+CentOS6.9(64位)+MySQL5.7.19(64位)一.操作系统调整 # 更改时区 .先查看时区 [root@localhost ~]# date -R Tu ...

  8. MySQL 8 通用二进制发行版安装

    安装前的一些说明: 检查平台兼容性: https://www.mysql.com/support/supportedplatforms/database.html 如果是在RedHat7版本安装的话, ...

  9. Linux中MySQL二进制安装步骤

    MySQL二进制安装步骤 安装依赖环境 [root@node3 ~]# yum -y install libaio 将mysql-5.7.26-linux-glibc2.12-x86_64.tar.g ...

随机推荐

  1. THEKEY

    追溯历史,有据可查的身份证明是中国隋唐时期的“鱼符”,只为达官贵人证明身份等级,后演变为“龟符”.“牙牌”.“腰牌”等,直至近现代时期才出现真正意义的身份证,增加了个人信息描述.由于过去的生产力水平较 ...

  2. ubuntu系统安装mysql(deb-bundle包)

    由于某些原因,又要在ubuntu系统中安装mysql了,之前曾经安装过好多次.都没记下来 以前一直动用源码包来安装,基于两个原因:1.一直用Python写代码.2.想使用文件来安装,而不是通过api ...

  3. 洛谷p2661信息传递题解

    题目 这个题一眼看上去就是用并查集求最小环. 我们可以设两个数组分别是f,d分别表示该点的爸爸和该点到祖先的距离. 当该点的爸爸等于他时,那他肯定就是祖先. 此时信息就肯定传递完了,此时的整个图中(我 ...

  4. SpringMVC 集成Log4j

    项目地址:https://github.com/xiaoqiu-duan/DataProject.git 1.添加jar <dependency> <groupId>org.s ...

  5. Yahoo Programming Contest 2019 补题记录(DEF)

    D - Ears 题目链接:D - Ears 大意:你在一个\(0-L\)的数轴上行走,从整数格出发,在整数格结束,可以在整数格转弯.每当你经过坐标为\(i-0.5\)的位置时(\(i\)是整数),在 ...

  6. hosts学习整理

    hosts是一个没有扩展名的系统文件,其基本作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库” (测试发现,对于https 协议的网站无效,果然https还是有作用的,不会被屏蔽) ...

  7. MT【297】任意四边形的一个向量性质

    在平面四边形$ABCD$中,已知$E,F,G,H$分别是棱$AB,BC,CD,DA$的中点,若$|EG|^2-|HF|^2=1,$设$|AD|=x,|BC|=y,|AB|=z,|CD|=1,$则$\d ...

  8. 「ZJOI2016」旅行者 解题报告

    「ZJOI2016」旅行者 对网格图进行分治. 每次从中间选一列,然后枚举每个这一列的格子作为起点跑最短路,进入子矩形时把询问划分一下,有点类似整体二分 至于复杂度么,我不会阿 Code: #incl ...

  9. Codeforces 1076D Edge Deletion(最短路树)

    题目链接:Edge Deletion 题意:给定一张n个顶点,m条边的带权无向图,已知从顶点1到各个顶点的最短路径为di,现要求保留最多k条边,使得从顶点1到各个顶点的最短距离为di的顶点最多.输出m ...

  10. cf1000F One Occurrence (线段树)

    这题我是离线做的 设i位置的数上次出现的位置是pre[i](如果第一次出现那就是0) 可以想到,用线段树维护一个区间的pre的最小值,如果它小于区间左端点,那这个数就是一个合法的答案 但直接这样做是错 ...