查看防火墙
systemctl status firewalld
重启防火墙
systemctl start firewalld

1、mysql
  首先关闭防火墙
    systemctl stop firewalld

  1.1 检查系统是否已经安装过mysql
    rpm -qa|grep mariadb
    如果查询到结果,证明已经安装过,必须先卸载

  1.2 卸载mariadb
    rpm -e --nodeps mariadb-libs

  1.3 由于mysql会产生临时文件存到/tmp文件夹中,如果使用非root管理员可能没有权限,会报错
    给tmp文件夹设置所有权限
    chmod -R 777 /tmp

  1.4 安装mysql客户端+服务端【需要先从官网下载这些,然后传输到opt文件后再执行安装】
    rpm -ivh mysql-community-common-8.0.18-1.el7.x86_64.rpm
    rpm -ivh mysql-community-libs-8.0.18-1.el7.x86_64.rpm
    rpm -ivh mysql-community-client-8.0.18-1.el7.x86_64.rpm
    rpm -ivh mysql-community-server-8.0.18-1.el7.x86_64.rpm

  1.5 阿里云安装mysql-community-server-8.0.18-1.el7.x86_64.rpm报错解决办法

    报错如下:

      [root@localhost upload]# rpm -ivh MySQL-server-5.5.25a-1.rhel5.x86_64.rpm
      error: Failed dependencies:
      libaio.so.1()(64bit) is needed by MySQL-server-5.5.25a-1.rhel5.x86_64
      libaio.so.1(LIBAIO_0.1)(64bit) is needed by MySQL-server-5.5.25a-1.rhel5.x86_64
      libaio.so.1(LIBAIO_0.4)(64bit) is needed by MySQL-server-5.5.25a-1.rhel5.x86_64

    解决办法:

      网站百度了很多个文章,都不行,后来发现有一篇文章写的方法可以,命令如下:
        yum install libaio
      这样就ok了,就可以继续安装mysql了。
      参考
      http://www.blogjava.net/amigoxie/archive/2013/02/22/395605.html

2、mysql配置
  2.1使用mysql之前,需要启动mysql服务:
    systemctl start mysqld

  2.2获取默认密码
    grep "A temporary password is generated for root@localhost" /var/log/mysqld.log

  2.3登录
    mysql -u root -p回车     然后输入密码

  2.4修改密码(允许设置成简单密码)
     set global validate_password.policy=0;
     set global validate_password.length=1;
     ALTER USER "root"@"localhost" IDENTIFIED BY "1234"; // 新密码为1234
  2.5退出
    exit;
  2.6用新密码登录
    mysql -u root -p 回车
    输入密码 回车

  2.7 远程连接mysql的权限
    选中数据库
      use mysql;
    查看所有用户
      select user,authentication_string,host from user;
    默认都是localhost
      update user set host = '%' where user = 'root';
    更改加密规则【目的是允许使用简单密码】
      update user set plugin='mysql_native_password' where user ='root';
    刷新
      FLUSH PRIVILEGES;

  测试外网连接mysql服务器
  (如果外网连接失败的话,先按照【重置密码】执行一遍,再执行【修改密码语句,并且需要替换语句内容】,
  只是ALTER USER "root"@"localhost" IDENTIFIED BY "1234";
  要替换成ALTER USER "root"@"%" IDENTIFIED BY "1234";)

3、重置密码
  3.1开启免密码登陆 修改my.cnf文件 默认在/etc/my.cnf。
     vim /etc/my.cnf
  在【mysqld】模块下面添加:skip-grant-tables 保存退出。

  3.2重启服务,使配置生效

    systemctl restart mysqld

  3.3登陆
    mysql -u root -p //不输入密码直接敲回车键

  3.4选择数据库
    use mysql把密码置空(因为免密登陆时不能直接修改密码) 
     update user set authentication_string = '' where user = 'root';
  3.5退出
    exit;
  3.6把/etc/my.cnf免密删掉。
  3.7重启服务
    systemctl restart mysqld
   3.8登陆
    mysql -u root -p //直接敲回车键,因为刚刚置空密码了。

   3.9和上面修改密码的步骤一样,重复一遍就好了~ 哈哈!
     set global validate_password.policy=0;
     set global validate_password.length=1;
    ALTER USER "root"@"%" IDENTIFIED BY "1234";

开启防火墙(允许特定端口号通过)
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

centOS7安装mysql8.0完美教程!!只要按照步骤,无脑操作,一次成功!的更多相关文章

  1. CentOS7安装MySQL8.0图文教程

    1.下载 MySQL 所需要的安装包 网址:https://dev.mysql.com/downloads/mysql/ 2.Select Operating System: 选择 Red Hat , ...

  2. Centos7安装MySQL8.0

    请到这个地址看:https://www.cnblogs.com/kevingrace/p/10482469.html Centos7安装MySQL8.0 - 操作手册 一.yum安装方式: 卸载之前版 ...

  3. CentOS7安装MySQL8.0小计

    之前讲配置文件和权限的时候有很多MySQL8的知识,有同志说安装不太一样,希望发个文,我这边简单演示一下 1.环境安装 下载MySQL提供的CentOS7的yum源 官方文档:<https:// ...

  4. Centos7安装MySQL8.0 - 操作手册

    MySQL 8 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 一.  Mysql8.0版本相比之前版本的一些特性 1) ...

  5. CentOS7安装mysql8.0编译报错集合

    以下都是我安装mysql8.0遇到的一些报错和解决方法 1.does not appear to contain CMakeLists.txt. 原因:mysql下载的源码包不对 解决方法:下载正确的 ...

  6. CentOS7安装MYSQL8.X详细教程

    1-首先查看系统是否存在mysql,无则不返回 # rpm -qa|grep mysql 2-安装wget # yum -y install wget 3-抓取mariadb并删除包,无则不返回 # ...

  7. Centos7 安装mysql-8.0.13(rpm)

    yum or rpm? yum安装方式很方便,但是下载mysql的时候从官网下载,速度较慢. rpm安装方式可以从国内镜像下载mysql的rpm包,比较快.rpm也适合离线安装. 环境说明 操作系统: ...

  8. 【Linux】 Centos7 安装 mysql-8.0

    本文介绍使用rpm包安装mysql, 以 mysql-8.0.17-1.el7.x86_64.rpm-bundle.tar 为例: 1.下载 MySQL下载地址:https://dev.mysql.c ...

  9. Centos7安装MySQL8.0(RPM方式)

    人生处处皆学问,工作也是如此!过去不止一次在Linux上安装MySQL,可以说轻车熟路,但是写篇文章总结一下,发现有很多细节值得学习! 安装包选择 为什么用rpm? 在Linux系列上安装软件一般有源 ...

随机推荐

  1. Thymeleaf常用语法:模板文件中表达式调用Java类的静态方法

    在模板文件的表达式中,可以使用“${T(全限定类名).方法名(参数)}”这种格式来调用Java类的静态方法. 开发环境:IntelliJ IDEA 2019.2.2Spring Boot版本:2.1. ...

  2. Raspberry Pi (树莓派) 更换源 - stretch 版本

    Raspberry Pi 默认更新源访问速度慢,更换国内源速度提升.更换软件更新源 (/etc/apt/sources.list),更换系统更新源 (/etc/apt/sources.d/raspi. ...

  3. 程序运行时间测试 - 使用libc 中 time 函数 实现秒级的运行时间检测

    c 标准库中,有time 函数,可以返回 1970年1月1日 开始到现在的秒数,我们可以调用两次的时间差来计算程序运行时间: https://github.com/yaowenxu/Workplace ...

  4. JUC-3-ConcurrentHashMap

    ConcurrentHashMap 锁分段机制  JDK1.8

  5. Redux使用

    思想 应用中所有的state都以一个对象树的形式储存在一个单一的store中.唯一能改变state的办法是触发action,一个描述发生什么的对象.为了描述action如何改变state树,需要编写r ...

  6. 使用Runtime的hook技术为tableView实现一个空白缺省页

    一.介绍 UITableView和UICollectionView是iOS开发最常用的控件,也是必不可少的控件,这两个控件基本能实现各种各样的界面样式. 它们都是通过代理模式监测数据源的有无对数据进行 ...

  7. window10下pytorch和torchvision CPU版本安装

    1.环境 python3.5 Anaconda 4.2.0 2.pytorch安装 pip3 install https://download.pytorch.org/whl/cpu/torch-1. ...

  8. Java中Set与Set<?>到底区别在哪?

    您可能知道,无界通配符 Set<?> 可以容纳任何类型的元素,而原始类型Set也可以容纳任何类型的元素.那它们之间有什么区别呢? 1.关于Set<?>的两个事实 关于Set&l ...

  9. 《细说PHP》第四版 样章 第23章 自定义PHP接口规范 3

    23.2  接口实现的基础 大家都很了解函数在本地应用,通过名称调用函数执行,并通过传递不同参数,函数有不同执行,执行后给调用者返回结果.如果把一个函数做成一个接口远程访问,也需要这几个步骤.使用HT ...

  10. pytorch-argparse的用法

    import argparse def parse(): parser = argparse.ArgumentParser() parser.add_argument('--scales',help= ...