Centos8上安装Mysql8.X

一、下载Mysql

  • 下载地址:https://dev.mysql.com/downloads/mysql/

二、将压缩包通过ftp软件服务器的目标位置:并解压

  1、我的是放在:/root/softwares

   

   2、解压为tar文件:xz -dev mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz 

     

  3、解压mysql-8.0.27-linux-glibc2.12-x86_64.tar 到 目录 /opt下面,注意不要放在root及其子目录下,会有权限问题。

    3.1 解压并移动到 opt 目录下: tar -xvf mysql-8.0.27-linux-glibc2.12-x86_64.tar -C /opt/

    3.2  重命名:mv mysql-8.0.27-linux-glibc2.12-x86_64 mysql8

    

三、配置日志目录及mysql环境变量

    1、进入mysql解压后的目录mysql8,并创建存放mysql日志的目录

      • cd /opt/mysql8/
      • mkdir data

     

     2、配置mysql环境变量

    1. vim /etc/profile
    2. MYSQL_HOME=/opt/mysql8/bin
    3. PATH=$PATH:$MYSQL_HOME
    4. export MYSQL_HOME PATH

  配置完成后重载:source /etc/profile

四、创建mysql用户组及用户

  mysql是出于安全考虑,默认拒绝用root账号启动mysql服务。所以我们创建一个mysql用户组和mysql的用户。

  1. groupadd mysql
  2. useradd -g mysql mysql
  3. mysql用户关联并修改权限

  

五、安装依赖包:

  查询是否安装libaio依赖包:yum search libaio

  

  如果没安装,可以用下面命令安装:yum install libaio

   

六、初始化mysql

  初始化mysql:mysqld --user=mysql --basedir=/opt/mysql8 --datadir=/opt/mysql8/data --initialize

  注意1:初始化成功之后会有一个临时密码,红色框内的是mysql数据库登录的临时密码,保存备用,每个人安装生成的临时密码不一样。

  注意2:如果在解压压缩包的时候,没有移动到opt文件夹下,直接放在root文件夹下,回报权限错误

  

七、启动mysql 

  sh /opt/mysql8/support-files/mysql.server start

  上面启动mysql服务命令是会报错的,因为没有修改mysql的配置文件,报错内容大致如下

  

  修改/opt/mysql8/support-files/mysql.server 配置文件

   接下来: 

  cp /opt/mysql8/support-files/mysql.server /etc/init.d/mysqld

  chmod 755 /etc/init.d/mysqld

  将mysql服务加到系统服务中
  chkconfig --add mysqld

  开机自启动
  chkconfig mysqld on

八、修改配置文件

  这里下载的mysql8.0.27版本并没有这个my.cnf文件,因此直接创建的。

  vim /etc/my.cnf

[client]
port=3306
socket=/tmp/mysql.sock

[mysqld]
basedir=/opt/mysql8
datadir=/opt/mysql8/data
socket=/tmp/mysql.sock
user=mysql
port=3306
character_set_server=utf8
# symbolic-links=0
bind-address=0.0.0.0


[mysqld_safe]
log-error=/opt/mysql8/data/error.log
pid-file=/opt/mysql8/data/mysqld.pid
tmpdir=/tmp

  然后,授权文件my.cnf

  

九、mysql启动服务

  

十、登录mysql

  mysql -u root -p

  

   如果报错:

  

  解决方案:sudo ln -s /usr/lib64/libtinfo.so.6.1 /usr/lib64/libtinfo.so.5

十一、修改密码

  use mysql

  这时候报了一个错:

  

  解决办法:

  修改初始密码:alter user 'root'@'localhost' identified by 'Se7eN521';

  刷新:flush privileges;

  

   至此,完成mysql8.0.23的安装。

十二、Navicat连接

  如果出现这个错误。

  

   解决方法

  1、在安装Mysql数据库的主机上登录root用户:

    mysql -u root -p

  依次执行如下命令:

   use mysql;

   select host from user where user='root';

  

  可以看到当前主机配置信息为localhost.

  2.将Host设置为通配符%

  Host列指定了允许用户登录所使用的IP,比如user=root Host=192.168.1.1。这里的意思就是说root用户只能通过192.168.1.1的客户端去访问。

  user=root Host=localhost,表示只能通过本机客户端去访问。

  而%是个通配符,如果 Host=192.168.1.%,那么就表示只要是IP地址前缀为“192.168.1.”的客户端都可以连接。

  如果Host=%,表示所有IP都有连接权限。

  注意:在生产环境下不能为了省事将host设置为%,这样做会存在安全问题,具体的设置可以根据生产环境的IP进行设置;

  

  问题二:如果出现下面的问题,是服务器上没有开放mysql的端口号,去服务器的安全组或者防火墙中添加mysql的端口号即可

  

   改好之后,重启一下mysql,即可使用Navicat连接


侯哥语录:我曾经是一个职业教育者,现在是一个自由开发者。我希望我的分享可以和更多人一起进步。分享一段我喜欢的话给大家:"我所理解的自由不是想干什么就干什么,而是想不干什么就不干什么。当你还没有能力说不得时候,就努力让自己变得强大,拥有说不得权利。"
原文地址:https://www.cnblogs.com/Se7eN-HOU/p/15533365.html