Linux-CentOS8安装mysql5.7

环境准备

下载MySQL5.7.29(5.7.* 版本为目前互联网公司常用版本)

开始安装

1、检查机器是否存在已安装过mysql(如果确定没有安装请跳过)

检查是否已经安装过mysql(新系统可能有自带的),执行以下命令:

[root@localhost /]# rpm -qa | grep mysql

如果出现类似以下内容,请先执行删除命令

在这里插入图片描述

删除命令:

[root@localhost /]# rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64

再次执行检查命令,如出现下图内容,表示没有安装的mysql:

在这里插入图片描述

查询所有Mysql对应的文件夹(如查询有内容执行删除),命令如下:

[root@localhost /]# whereis mysql
[root@localhost lib]# find / -name mysql

在这里插入图片描述

删除命令(删除后仅剩蓝色框内内容,这些可不删):

[root@localhost /]#  rm -rf /usr/local/mysql

再次执行检查mysql文件夹的命令后如下:

在这里插入图片描述

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

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

3、上传并解压缩 并重命名

创建软件上传目录:

 [root@localhost /]# mkdir /usr/local/soft

将下载好的安装包上传到/usr/local/soft下

切换目录到压缩包所在文件夹开始解压:

[root@localhost /]# cd /usr/local/soft
[root@localhost /]#  tar xzvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz

重命名

mv mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz mysql

把mysql里面的所有放置到 /usr/local/mysql下

 mkdir /usr/local/mysql
 cd /usr/local/soft/mysql
 mv * /usr/local/mysql
 cd /usr/local/mysql
  

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

[root@localhost /]# mkdir /usr/local/mysql/data

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

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

编译安装并初始化mysql(执行命令时注意路径),务必记住初始化输出日志末尾的密码(数据库管理员临时密码):

[root@localhost /]# cd /usr/local/mysql/bin
[root@localhost bin]# ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql

在这里插入图片描述

图中随机生成的初始密码一定要保存好!!!

 

安装中可能出现的问题:

问题一:

在这里插入图片描述

解决办法:

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

检查是否安装成功(显示如图内容表示成功):

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

在这里插入图片描述

问题二:

在这里插入图片描述

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

问题三:

缺失my.cnf文件
解决方法(新增编辑配置文件my.cnf,添加配置如下):

[root@localhost bin]#  vi /etc/my.cnf

[mysqld]
datadir=/usr/local/mysql/data
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=400
innodb_file_per_table=1
#表名大小写不明感,敏感为
lower_case_table_names=1

启动mysql服务,启动成功后显示SUCCESS

在这里插入图片描述

查询服务开启的命令:

ps -ef|grep mysql
ps -ef|grep mysqld

添加依赖包:

yum -y install numactl

在这里插入图片描述

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

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

在这里插入图片描述

添加依赖包:

yum install libncurses*

在这里插入图片描述

登录mysql(密码为之前日志中记录的)

在这里插入图片描述

修改登录密码:

set password for root@localhost = password('root');

在这里插入图片描述

开放远程访问权限:

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

设置开机自动启动:

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

开放Linux的对外访问的端口3306:

#开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent  
#重启firewall  
firewall-cmd --reload

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值