前言

  基于本地Centos7.6虚拟机Mysql8的配置(亲测有效)

一.安装前的准备

  1.到官网下载mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz
  2.通过Xshell或者Xftp、PSPC、PSFTP等工具把安装包上传到CentOS服务器。
   PSftp示范
    (1)先在虚拟机上命令(ip addr)查看虚拟机的ip,没有ip自己网上找配置方法

    (2)打开psftp,连接虚拟机
    open ip

    (3)账号密码登录(注意:要回复y or n时,要照提示输入,不能直接回车)

    (4)登陆成功后,当前目录为root,切换到你要上传的位置(这里以local目录为例)
    cd /usr/local/

    (5)再切到本地存放mysql8压缩包的目录下(这里以F:\test为例)
    lcd F:\test

    (6)切到test目录后,开始上传(注意:后缀名也要打上去)
    put mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz
    当提出pftp>提示时,说明上传成功
    

   3.在安装前需要确定现在这个系统有没有 mysql,如果有那么必须卸载。
     (1)查看mysql数据库
      rpm -qa | grep -i mysql

     (2)卸载mysql数据库
      rpm -e --nodeps mysql 文件名

     (3)查找mysql文件
      find / -name mysql

     (4)删除mysql有所文件和配置文件my.cnf(自己上传的别错删了)
      rm -rf 指定路径下的文件名
    

  4.解压缩mysql文件
    (1)xz –d /usr/local/mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz

    (2)tar –xvf /usr/local/mysql-8.0.16-linux-glibc2.12-x86_64.tar

    (3)mv /usr/local/mysql-8.0.16-linux-glibc2.12-x86_64 /usr/local/mysql

  5.查看解压后的文件
    ls -al /usr/local/mysql
  

二.添加mysql组和用户及权限分配

  1.检查mysql组和用户是否存在,如无创建
    cat /etc/group | grep mysql
    cat /etc/passwd | grep mysql

  2.创建mysql用户组,指定mysql用户属于mysql组
    groupadd mysql
    useradd -g mysql mysql

  

 3.修改用户mysql的密码为A2019a(自己设定),回车后输入密码

    passwd mysql

  4给予安装目录mysql权限
  chown -R mysql:mysql /usr/local/mysql

  

三.创建和设置配置文件my.cnf

  1.在/etc/下创建创建my.cnf
    touch /etc/my.cnf
    vi /etc/my.cnf
  在配置文件my.cnf添加如下配置(注意注意:别打错单词了,我就试过差点怀疑人生)
   [mysql]

# 设置mysql客户端默认字符集

default-character-set=utf8

[mysqld]

skip-name-resolve

#设置3306端口

port = 3306

# 设置mysql的安装目录

basedir=/usr/local/mysql

# 设置mysql数据库的数据的存放目录

datadir=/usr/local/mysql/data

# 允许最大连接数

max_connections=200

# 服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8

# 创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

lower_case_table_names=1

max_allowed_packet=16M

  2.赋my.cnf文件mysql权限
   chown mysql:mysql /etc/my.cnf

  

四.mysql初始化配置

  1.切换到mysql用户权限
    su mysql

    2.初始化生成data目录(切记不要手动创建data目录)(补充:mysql用户下初始化不成功(没有生成密码),用root用户来操作,最后记得把生成data目录赋予mysql用户)
    /usr/local/mysql/bin/mysqld --initialize
    如果当前所在目录为bin录下,命令形式为./mysqld --initialize
    ./不能省略,否则出错,因为省略后系统会当成mysqld程序执行,而不是bin目录下的mysqld可执行文件

  3.如果提示没有libaio程序就先安装yum install libaio-devel.x86_64然后不断回y就行
   但得先切回root用户(命令su回车输密码即可),否则报错权限不够
   不用安装也要先切回root,否则下面步骤也会报错

   4.初始化完成后,仔细看提示,会自动生成mysql数据库登陆密码,记好
  

  5.此时在mysql目录下会生成data目录,但权限只有750,要追加到755

  

  chmod 755 /usr/local/mysql/data
  (或者 chmod o+r+x /usr/local/mysql/data)

  

五.软连接与开机启动项设置

  1.创建软连接(实现可直接命令行执行mysql)
    ln -s /usr/local/mysql/bin/mysql /usr/bin

   2.mysqld配置,拷贝启动文件到/etc/init.d/目录下并重命令为mysqld
    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

    3.检查自启动项列表中有没有mysqld
    chkconfig --list mysqld

  4.如果没有就添加mysqld
    chkconfig --add mysqld

  5.设置开机启动
    chkconfig mysqld on

    6.启动测试
    service mysqld start

  

六.pid问题解决

  

  1.如果无法启动,且提示pid错误;首先一定要确认配置文件有没有打错字母,改正后,删除data目录
    rm -rf /usr/local/mysql/data

   2.重新初始化一遍
    /usr/local/mysql/bin/mysqld --initialize

  3.记下密码后,追加755权限给data目录
    chmod 755 /usr/local/mysql/data

  4.再重新启动mysql服务
    service mysqld start
  仍不行重试第六个标题步骤
  按照前面来的操作,一般是不会有问题;配置文件中如果自定义mysql日志路径,在创建文件夹存放日志文件时,该文件夹手动创建后要赋Mysql用户权限

七.登录mysql修改密码

  1.登录mysql,前面最新的密码就派上用场了
    mysql -uroot -p密码

   2.修改密码
    set password='123456';

  在yum或rpm在线安装完成后,首次登录强制修改密码
  alter user 'root'@'localhost' identified by '123456';
  有的人可能试过上面这句直接修改密码不行,此时可以先减低密码的防御策略,之后再视情况修改
  set global validate_password.policy=0;
  set global validate_password.length=1;
  再执行上面的修改密码的语句

  基本配置到此完成

  mysql安全配置推荐参考https://www.freebuf.com/articles/database/36777.html

CentOS7下MySQL8的二进制基本安装配置的更多相关文章

  1. CentOS7下搭建Nginx+PHP7的安装配置

    一.安装编译工具及库文件: yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 环境要求 nginx是C ...

  2. Centos7下的rabbitmq-server-3.8.11安装配置

    推荐大家看看这篇文章:https://blog.csdn.net/qq_27669839/article/details/113418827 下载安装文件 在网上去下载rabbmitmq-3.8.11 ...

  3. centos7下haproxy1.7的使用与配置

    centos7下haproxy1.7的使用与配置 haproxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性.负载均衡,以及基于TCP和HTTP的应用程序代理. 一.haproxy下载 ...

  4. Centos7下PHP的卸载与安装nginx

    Centos7下PHP的卸载与安装nginx CentOS上PHP完全卸载,想把PHP卸载干净,直接用yum的remove命令是不行的,需要查看有多少rpm包,然后按照依赖顺序逐一卸载. 1.首先查看 ...

  5. <亲测>CentOS 7.3下Node.js 8.6安装配置(含NPM以及PM2)

    CentOS 7.3下Node.js 8.6安装配置 2017年09月30日 14:12:02 阅读数:2245更多 个人分类: Nodejs   版权声明:本文为博主原创文章,未经博主允许不得转载. ...

  6. CentOS8.1操作系下使用通用二进制包安装MySQL8.0(实践整理自MySQL官方)

    写在前的的话: 在IT技术日新月异的今天,老司机也可能在看似熟悉的道路上翻车,甚至是大型翻车现场!自己一个人开车过去翻个车不可怕,可怕的是带着整个团队甚至是整个公司一起翻车山崖下,解决办法就是:新出现 ...

  7. 离线环境下使用二进制方式安装配置Kubernetes集群

    本文环境 Redhat Linux 7.3,操作系统采用的最小安装方式. Kubernetes的版本为 V1.10. Docker版本为18.03.1-ce. etcd 版本为 V3.3.8. 1. ...

  8. 【hive】centos7下apache-hive-3.1.2-bin的安装测试

    前言:安装hive还是遇见些问题,但还好都解决了,比当初安装配置hadoop-3.2.0容易点...... 正文: 1.下载并安装hive:tar -zxvf apache-hive-3.1.2-bi ...

  9. Windows环境下的NodeJS+NPM+Bower安装配置

    npm作为一个NodeJS的模块管理,之前我由于没有系统地看资料所以导致安装配置模块的时候走了一大段弯路,所以现在很有必要列出来记录下.我们要先配置npm的全局模块的存放路径以及cache的路径,例如 ...

随机推荐

  1. HihoCoder第十一周:树中的最长路

    #1050 : 树中的最长路 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 上回说到,小Ho得到了一棵二叉树玩具,这个玩具是由小球和木棍连接起来的,而在拆拼它的过程中, ...

  2. 配置vSphere Web Client超时值

    1.默认超时值120分钟 2.webclient.properties文件位置:     Windows系统:C:\ProgramData\VMware\vCenterServer\cfg\vsphe ...

  3. C++面试常见问题——05字符串的逆序

    字符串的逆序 #include<iostream> #include<string.h> using namespace std; void ReverseStr(char s ...

  4. 指令——mkdir

    一个完整的指令的标准格式: Linux通用的格式——#指令主体(空格) [选项](空格) [操作对象] 一个指令可以包含多个选项,操作对象也可以是多个 指令mkdir——(make directory ...

  5. 《Python爬虫技术:深入理解原理、技术与开发》已经出版,送Python基础视频课程

    好消息,<Python爬虫技术:深入理解原理.技术与开发>已经出版!!!   JetBrains官方推荐图书!JetBrains官大中华区市场部经理赵磊作序!送Python基础视频课程!J ...

  6. Windows平台整合SpringBoot+KAFKA__第3部分_代码部分(结束)

    重要的地方说下,算是给自己提醒,也给阅读者凑合着看看吧: (1)序列化.反序列化: 注意看这个文章 https://www.jianshu.com/p/5da86afed228 很多网上的例子都是 推 ...

  7. 三十三、在SAP中通过选择屏幕,选择我们需要的数据

    一.代码如下,注意红色框框中的语句 二.我们选择一条数据 三.输出结果如下

  8. 090-PHP数组过滤函数array_filter

    <?php function odd($x){ //定义过滤偶数的函数 if($x%2==1) return TRUE; } function even($x){ //定义过滤奇数的函数 if( ...

  9. 如何为 .NET Core 安装本地化的 IntelliSense 文件

    在.Net Core 2.x 版本,Microsoft 官方没有提供 .Net Core 正式版的多语言安装包.因此,我们在用.Net Core 2.x 版本作为框架目标编写代码时,智能提成是英文的. ...

  10. 二、react开发环境配置与webpack入门

    Webpack 模块打包工具(module bundler)功能: 将 CSS.图片与其他资源打包 打包之前预处理(Less.CoffeeScript.JSX.ES6 等)档案 依 entry 文件不 ...