阿里云下安装mysql-8.0.20

标题一、安装前准备

1.查看是否已经安装过MySql

rpm -qa | grep mysql

在这里插入图片描述

从执行结果,可以看出我们已经安装过MySQL,执行删除命令

rpm -e --nodeps `rpm -qa | grep mysql`

再次执行查询命令,查看是否删除

在这里插入图片描述

2.查询所有MySql对应的文件

[root@iZ2zej3cfhjoiofmiki28xZ /]# whereis mysql
mysql: /usr/lib64/mysql /usr/share/mysql
[root@iZ2zej3cfhjoiofmiki28xZ lib]# find / -name mysql
/usr/lib64/mysql
/usr/share/mysql
/etc/selinux/targeted/active/modules/100/mysql

删除相关目录或文件

[root@iZ2zej3cfhjoiofmiki28xZ lib]# rm -rf /usr/lib64/mysql /usr/share/mysql /etc/selinux/targeted/active/modules/100/mysql

验证是否删除完毕!

[root@iZ2zej3cfhjoiofmiki28xZ /]# whereis mysql
mysql:
[root@iZ2zej3cfhjoiofmiki28xZ /]# find / -name mysql
[root@iZ2zej3cfhjoiofmiki28xZ /]# 

3.检查mysql用户组和用户是否存在如果没有,则创建

[root@iZ2zej3cfhjoiofmiki28xZ /]# cat /etc/group | grep mysql
[root@iZ2zej3cfhjoiofmiki28xZ /]# cat /etc/passwd |grep mysql
[root@iZ2zej3cfhjoiofmiki28xZ /]# groupadd mysql
[root@iZ2zej3cfhjoiofmiki28xZ /]# useradd -r -g mysql mysql
[root@iZ2zej3cfhjoiofmiki28xZ /]#

4.从官网下载用于Liunx的MySql安装包,下载命令

[root@iZ2zej3cfhjoiofmiki28xZ downloads]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

也可以直接到 mysql官网 选择对应版本进行下载

在这里插入图片描述

二、安装MySql

1.解压MySql安装包

在执行下载MySql的目下或者上传MySql的目录下找到:mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

[root@iZ2zej3cfhjoiofmiki28xZ downloads]# tar xvf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz 

在这里插入图片描述

解压完成后,可以看到目录下多了一个解压文件夹,移动文件到/us r/local/下,并将文件夹名称修改为mysql

如果/usr/local/下已经存在mysql,请将已存在mysql文件修改为其他名称,否则后续步骤可能无法正确进行。

执行如下命令:

[root@iZ2zej3cfhjoiofmiki28xZ downloads]# mv mysql-8.0.20-linux-glibc2.12-x86_64 /usr/local/mysql
[root@iZ2zej3cfhjoiofmiki28xZ downloads]# cd /usr/local/
[root@iZ2zej3cfhjoiofmiki28xZ local]# ls
aegis  bin  etc  games  include  lib  lib64  libexec  mysql  sbin  share  src
[root@iZ2zej3cfhjoiofmiki28xZ local]# 

2.更改MySql目录下所有目录及文件所属的用户组和用户,以及权限

[root@iZ2zej3cfhjoiofmiki28xZ local]# chown -R mysql:mysql /usr/local/mysql
[root@iZ2zej3cfhjoiofmiki28xZ local]# chmod -R 755 /usr/local/mysql

3.创建MySql数据存放目录

[root@iZ2zej3cfhjoiofmiki28xZ local]# mkdir -p /usr/local/mysql/data

4.编译安装并初始化mysql,务必记住初始化输出日志末尾的密码(数据库管理员临时密码)

[root@iZ2zej3cfhjoiofmiki28xZ local]# cd mysql/bin/
[root@iZ2zej3cfhjoiofmiki28xZ bin]# ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql 
  • 补充说明:*

第4步时,可能会出现错误:
在这里插入图片描述

出现该问题首先检查该链接库文件有没有安装使用 命令进行核查

 [root@localhost bin]# rpm -qa|grep libaio   
 [root@localhost bin]# 

运行命令后发现系统中无该链接库文件

 [root@localhost bin]#  yum -y install libaio-devel.x86_64

安装成功后,继续运行数据库的初始化命令,此时可能会出现如下错误:
在这里插入图片描述
执行如下命令后:

[root@localhost bin]#  yum -y install numactl

执行无误之后,再重新执行第4步初始化命令,无误之后再进行第5步操作!

运行初始化命令后,输出如下日志:

在这里插入图片描述

记录日志末尾位置root@localhost:后的字符串,此此字符串为mysql管理员临时登录密码。

5.编辑配置文件my.cnf,添加配置如下

[root@iZ2zej3cfhjoiofmiki28xZ bin]#  vi /etc/my.cnf
    
[mysqld]
port=3306 
datadir=/usr/local/mysql/data
log_error=/usr/local/mysql/data/error.log
symbolic-links=0
max_connections=600
innodb_file_per_table=1

6.测试启动MySql服务

root@iZ2zej3cfhjoiofmiki28xZ mysql]# /usr/local/mysql/support-files/mysql.server start

显示如下结果,说明数据库启动成功!

在这里插入图片描述

为了安全起见,查看MySql服务是否启动成功

在这里插入图片描述

我的天讷!!折腾了好久,终于成功了。

  • 补充说明: *
    mysql8.0.14~8.0.19的版本,如果在my.cnf中配置lower-case-table-names=1以实现不区分表名大小写 >,启动数据库时将会报错,根据官方文档记录,只有在初始化时配置才有效,因此在初始化参数后添加>参数 --lower-case-table-names=1;但是20版的Mysql,如果在初始化的时候添加上 --lower-case-table->names=1,在启动的时候就需要在 my.cnf 配置文件中添加 lower-case-table-names=1

7.添加软连接,并重启MySql服务

[root@iZ2zej3cfhjoiofmiki28xZ ~]# ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
[root@iZ2zej3cfhjoiofmiki28xZ ~]# ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
[root@iZ2zej3cfhjoiofmiki28xZ ~]# service mysql restart

在这里插入图片描述

8.登陆mysql,修改密码(密码为步骤5生成的临时密码)

[root@iZ2zej3cfhjoiofmiki28xZ ~]#  mysql -u root -p
Enter password:
mysql>ALTER USER USER() IDENTIFIED BY 'yourpass';
mysql>flush privileges;

在这里插入图片描述

9.开启远程连接

mysql> use mysql;    
mysql> update user set user.Host='%' where user.User='root';
mysql> flush privileges;

在这里插入图片描述

通过可视化连接工具,测试远程连接。

在这里插入图片描述

在远程连接的过程中有可能报这个错误:
在这里插入图片描述
解决办法:
在控制台登陆后重新改下密码即可

mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'yourpass';

在这里插入图片描述

10.设置开机自启动

1、将服务文件拷贝到init.d下,并重命名为mysql
[root@iZ2zej3cfhjoiofmiki28xZ ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2、赋予可执行权限
[root@iZ2zej3cfhjoiofmiki28xZ ~]# chmod +x /etc/init.d/mysqld
3、添加服务
[root@iZ2zej3cfhjoiofmiki28xZ ~]# chkconfig --add mysqld
4、显示服务列表
[root@iZ2zej3cfhjoiofmiki28xZ ~]# chkconfig --list

在这里插入图片描述

至此,Mysql-8.0.20版本的安装,已经全部完成

相关推荐
©️2020 CSDN 皮肤主题: 数字50 设计师:CSDN官方博客 返回首页