Linux下安装mysql8.0.21

一、安装准备

MySQL下载地址:

https://downloads.mysql.com/archives/community/

https://downloads.mysql.com/archives/community/

是否安装过mysql

检查是否已经安装过mysql,执行命令:

rpm -qa | grep mysql

如果有的,可以进行删除,删除命令:

rpm -e --nodeps 上面查出来的版本

安装目录:

进入如下目录:

cd /usr/local/

将下载下来的mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz拷贝到这个路径下

因为压缩了两次,第一次是tar,第二次是xz,所以先解压xz的,执行如下命令:

xz -d mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz

稍等一会儿 ,会在当前目录下出现如下文件:
mysql-8.0.21-linux-glibc2.12-x86_64.tar

然后解压当前文件,执行命令:

tar -zxvf mysql-8.0.21-linux-glibc2.12-x86_64.tar

然后,/usr/local/路径下会出现mysql-8.0.21-linux-glibc2.12-x86_64这个文件夹

执行如下命令:

mv mysql-8.0.21-linux-glibc2.12-x86_64 mysql

将文件名成变更为mysql,结果如下:


在/usr/local/mysql目录下创建data目录,

#此处用来存放mysql的数据文件,如果不像放在这个文件夹下,可以在制定的路径下创建,之后在配置文件中替换就行
mkdir /usr/local/mysql/data

mysql用户组创建:

检查mysql用户组和用户是否存在,命令如下:

cat /etc/group | grep mysql
cat /etc/passwd |grep mysql

如果不存在mysql用户组,执行如下命令:

#添加组
groupadd mysql
#添加用户并加入mysql组
useradd -r -g mysql mysql

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

chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql

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

cd /usr/local/mysql/bin
#datadir是上面创建的data文件夹,存放的是mysql的数据文件, basedir是mysql的安装目录
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql

执行成功后,一定要看末尾的临时密码,会有如下提示:

A temporary password    is generated for root@localhost: 临时密码

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

vi /etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
port=3306
symbolic-links=0
max_connections=600
#是否将每个表的数据单独存储,1表示单独存储;0表示关闭独立表空间,可以通过查看数据目录,查看文件结构的区别
innodb_file_per_table=1
#是否区分大小写,1表示存储时表名为小写,操作时不区分大小写;0表示区分大小写;不能动态设置,修改后,必须重启才能生效
lower_case_table_names=1
#设置数据库默认字符集,如果不设置默认为latin1
character_set_server=utf8

测试启动mysql服务器:

/usr/local/mysql/support-files/mysql.server start

出现start success则表示启动成功

添加软连接,并重启mysql服务:

ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
service mysql restart

登录mysql,修改密码

mysql -u root -p初始化时临时生成的密码

登录成功后,执行如下命令:

#如果不加mysql_native_password的话,通过navicat客户端链接的时候报Navicat ,SQLyog连接MySQL8 异常2059-Authentication plugin 'caching_sha2_password' cannot be loaded
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '在这里输入你的密码';

开放远程连接,执行命令:

grant all privileges on *.* to 'root'@'%' identified by 'root';
flush privileges;

你可能感兴趣的:(Linux下安装mysql8.0.21)