• 前言

前段时间领导让我部署测试环境,希望安装高版本的MySQL,过程遇到很多问题,特此记录帮助迷失的人们

  • 下载

MySQL官方下载地址:https://dev.mysql.com/downloads/mysql/

如图所示,点击DOWNLOAD下载即可

  • 安装

将下载好的压缩包上传到Linux服务器 /usr/local目录下

.gz解压:

tar -zxvf mysql-XXX.tar.gz

.xz解压:

unzip mysql-XXX.tar.xz

重命名(最好这样做,因为mysql官网默认安装路径:/usr/local/mysql):

mv mysq-XXX mysql

创建数据存储文件夹:

mkdir /usr/local/mysql/data

创建用户及用户组:

# 用户组
groupadd mysql
# 用户 (用户名/密码)
useradd -g mysql mysql
# 授权
chown -R mysql.mysql /usr/local/mysql/

* 编辑 /etc/my.cnf 文件(最重要的一步来了,mysql8通用配置,没有该文件则新建):

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password user=mysql
lower_case_table_names=1
default-time-zone='+8:00'
sql_mode=NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE [client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4

初始化数据库:

mysqld --initialize --console

# 网上有好多在初始化数据库的时候设置好多参数,我这里说明下,因为我们在 /etc/my.cnf 文件里编辑了我们所需的所有配置,MySQL初始化时首先默认读取 my.cnf 文件

# 所以我们直接执行初始化命令就好,当然也可以不配置 my.cnf 文件且初始化的时候设置参数即可,但是初始化命令不可逆转,如果后面启动服务失败只能下载重新安装

建立MySQL服务:

ln -s /usr/local/mysql/bin/mysql /usr/bin

将MySQL服务加入自启动:

cp -a ./support-files/mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
# 加入自启动
chkconfig --add mysql
# 检查服务是否生效
chkconfig --list mysql

启动mysql服务:

# 启动
service mysql start
# 查看启动状态
service mysql status

以安全模式登录MySQL:

# 安全模式登录
./bin/mysqld_safe --skip-grant-tables
# 打开新窗口登录mysql
./usr/local/mysql/bin/mysql -u root

修改root密码:

use mysql;
update user set host='%' where user='root';
update mysql.user set Password=password('root') where User='root';
grant all privileges on *.* to root@"%" identified by 'root';
flush privileges;

查看进程号并杀死MySQL安全服务:

ps -ef|grep mysql
kill -9 进程号

导入sql文件

mysql -uroot -D数据库名 < XXX.sql

至此,mysql安装完毕,我们就可以愉快的玩耍了

  • 卸载

若过程出现操作不当,需要卸载MySQL也很简单,因为我们并没有使用 yum 或 rpm 命令等等,所以只有两步

关闭MySQL服务:

service mysql stop

删除MySQL文件:

rm -rf $(find / -name mysql)

Linux安装MySQL8高版本压缩包(通用)的更多相关文章

  1. centos7安装较高版本python3.5/3.6

    应用环境: Centos7或者RHEL7下默认安装的python版本为2.7.x,更新不够及时,现在很多时候需要额外安装较高版本的python环境, 网上搜罗一圈总结记录一下常用两种方式: ① 源码编 ...

  2. 转:centos7/rhel7安装较高版本ruby2.2/2.3/2.4+

    centos7/rhel7安装较高版本ruby2.2/2.3/2.4+   环境需求:  在Centos7.3中,通过yum安装ruby的版本是2.0.0,但是如果有些应用需要高版本的ruby环境,比 ...

  3. CentOS6编译安装gcc高版本

    编译安装gcc高版本 因CentOS中gcc版本仅有4.4,故编译安装gcc高版本. 安装依赖库(如果你已安装过gcc低版本,可跳过这步) yum install glibc-static libst ...

  4. 安装了高版本OS X 之后无法使用MacPorts的port命令

    安装了高版本OS X 之后无法使用MacPorts的port命令 pod update提示: Current platform "darwin 14" does not match ...

  5. Linux安装Mysql8.0及SQL分类的补充

    Linux安装Mysql8.0 参考文章:https://blog.csdn.net/qq_38570633/article/details/109257430 参考文献:https://blog.c ...

  6. Linux安装mysql8.*

    分别在Linux和windows上安装mysql8.* 环境 CentOS7 安装mysql8 步骤: window下的Navicat 连接MySql8: 第一部分 CentOS7安装mysql8 1 ...

  7. centos7/rhel7安装较高版本ruby2.2/2.3/2.4+

    环境需求: 在Centos7.3中,通过yum安装ruby的版本是2.0.0,但是如果有些应用需要高版本的ruby环境,比如2.2,2.3,2.4...那就有点麻烦了,譬如:我准备使用redis官方给 ...

  8. linux安装mysql8.0

    linux 上安装mysql8.0 mysql版本8.0.16 MySQL Community 操作系统centos7 准备工作: mysql8.0 rpm文件 安装步骤: 1. 下载mysql的re ...

  9. Linux安装mysql8.0.29详细教程

    ​ 我在上午卸载了陪伴我多年的mysql5.7,现在准备安装mysql8.0. 一.登录mysql官网下载mysql安装包(我的系统是Centos7) MySQL :: Download MySQL ...

随机推荐

  1. 完全基于node的web应用

    完全基于node的web应用 node js web fs fs文件路径 事实上通常"正确的方式"一般都不简单. 用例 模块 基本http服务器 基于事件驱动回调 模块化serve ...

  2. while(1)和system("pause")区别

    我们在调试时,有时候会用到这两个语句. 1.显而易见,第一个是一个循环函数,占cpu.占内存: 2.system("pause")是一个系统调用,占内存,不占cpu;这个开销还是有 ...

  3. Qt update刷新之源码分析(二)

    大家好,我是IT文艺男,来自一线大厂的一线程序员 上次视频给大家从源码层面剖析了Qt update刷新机制的异步事件投递过程,这次视频主要从源码层面剖析Qt刷新事件(QEvent::UpdateReq ...

  4. PAT-1066(Root of AVL Tree)Java语言实现

    Root of AVL Tree PAT-1066 这是关于AVL即二叉平衡查找树的基本操作,包括旋转和插入 这里的数据结构主要在原来的基础上加上节点的高度信息. import java.util.* ...

  5. Codeforces (ccpc-wannafly camp day2) L. Por Costel and the Semipalindromes

    题目链接:http://codeforces.com/gym/100923/problem/L 分析:题目要求序列首尾相同,在此基础上的字典序第k个:因为只存在a,b所以我们把它等效成0和1的话,字典 ...

  6. 基于 vagrant搭建移动端的开发环境

    # 后端开发环境Homestead启动 Homestead 之前,确保 VirtualBox .Vagrant.Git 软件己安装. ## 安装 laravel/homesteadvagrant bo ...

  7. ES系列(一):编译准备与server启动过程解析

    ES作为强大的和流行的搜索引擎服务组件,为我们提供了方便的和高性能的搜索服务.在实际应用中也是用得比较爽,但如果能够更深入一点.虽然网上有许多的文章已经完整说明,ES是如何如何做到高性能,如何做到高可 ...

  8. 漏洞复现-2.x rce-Thinkphp远程命令执行

                0x00实验环境 攻击机:win10 靶机:Ubuntu18 (docker搭建的vulhub靶场) 0x01影响版本 影响Thinkphp 2.x的版本 0x02实验目的 学 ...

  9. Java split 根据指定字符串分隔成list数组的用法

    String str="Java string split test";      String[] strarray=str.split(" ");//得到一 ...

  10. Linux less命令查看文件常用查询方法

    g 跳到文件开头 G 跳到文件结尾 / 往下搜索字符 ? 网上搜索字符 n 执行上一个搜索(/或者?的搜索),例如上一个搜索是使用/搜索的,则继续使用/搜索,即往下搜索结果 N 反向执行上一个搜索(/ ...