Centos7.2安装mysql8

Posted 鬼谷山人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7.2安装mysql8相关的知识,希望对你有一定的参考价值。

1、安装前工作

在安装前需要确定现在这个系统有没有 mysql,如果有那么必须卸载 (在 centos7 自带的是 mariaDb 数据库,所以第一步是卸载数据库)。

  #查看mariadb数据库:rpm -qa | grep mariadb

  #卸载mariadb数据库:rpm -e --nodeps  mariadb文件名

  #查看 mysql 数据库:rpm -qa | grep -i mysql

  #卸载 mysql 数据库:rpm -e mysql文件名 # 如果有关联文件,不能直接卸载。可以用一下命令强制卸载:rpm -e --nodeps mysql文件名) 

  #删除etc目录下的my.cnf文件:rm /etc/my.cnf

2、官网下载

下载成功之后,上传到云服务

 

3、解压到/usr/local下面

解压命令:tar -xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz -C /usr/local/

4、添加mysql用户组和用户

  #首先检查mysql用户和组是否存在  

  cat /etc/group | grep mysql      

  cat /etc/passwd | grep mysql

  #添加mysql用户和组  

  groupadd mysql          

  useradd -r -g mysql mysql

5、初始化mysql配置表

  # chown -R mysql:mysql ./  修改当前目录为mysql用户

  #./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64 --datadir=/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64/data

    初始化数据库

  # 如果出现如图所示错误,则说明这是缺少numactl,这个时候如果是Centos就yum -y install numactl就可以解决,然后重新运行上面的initialize命令

  # 再次执行,注意下图中initialize成功,会出现一个随机密码

 

  #修改当前用户为root用户  chown -R root:root ./

  #修改当前的data目录为mysql用户   chown -R mysql:mysql data/

  cd support-files/

  touch my-default.cnf

  cp ./my-default.cnf /etc/my.cnf

 mkdir tmp

 chmod 777 ./tmp/  

修改/etc/my.cnf配置文件

[mysqld]
basedir=/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64
datadir=/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64/data
port=3306
socket=/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64/tmp/mysql.socket
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

 

 

6、加入开机启动项

  #copy

  #增加执行权限

  #注册启动服务

   #查看是否添加成功

cp mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld

cd ..

chkconfig --add mysqld

  #启动服务

cd support-files/
./mysql.server start --user=mysql

 

7、配置环境变量

  # vi /etc/profile

export PATH=$PATH:/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64/bin:/usr/local/mysql-8.0.13-linux-glibc2.12-x86_64/lib

# 保存退出之后 执行source /etc/profile让文件生效

8、登录并修改初始密码

  # 建立软链接  ln -s /usr/local/mysql-8.0.13-linux-glibc2.12-x86_64/tmp/mysql.socket /tmp/mysql.sock

 

  # 登录mysql,密码是刚刚生成的

,修改密码  alter user \'root\'@\'localhost\' identified by \'123456\';

 

9, 授权用户:任意主机以用户root和密码mypwd连接到mysql服务器

  # 查询user和host,并将host改成‘%’  select user,host from user;

  # update user set host = \'%\' where user = \'root\';

  # flush privileges;

 

  # 经过以上步骤如果还连不上,可以试试以下方式,重置以下密码

  # ALTER USER \'root\'@\'%\' IDENTIFIED WITH mysql_native_password BY \'123456\';

以上是关于Centos7.2安装mysql8的主要内容,如果未能解决你的问题,请参考以下文章

centos7.2 安装mysql8.0.11 并自动初始化root密码

mysql8安装教程

mysql8安装教程 mysql8安装教程教学详解

mysql8.0安装

WIN10安装MySQL8;CentOS7安装MySQL8

编译安装MySQL8.0 gcc的编译安装