本文介绍了Linux CentOS系统下Mysql5.7-m14的下载和安装方法
CentOS Linux release 7.9.2009 (Core)
mysql Ver 14.14 Distrib 5.7.4-m14, for Linux (x86_64) using EditLine wrapper
一、去官网下载mysql 5.7.4-m14
官网下载链接:
https://dev.mysql.com/downloads/
下载完成后上传到服务器
二、安装Mysql
1、首先解压刚刚上传的mysql 5.7-m14
tar -xvf MySQL-5.7.4-m14-0.2.m14.el7.x86_64.rpm-bundle.tar
这是解压后的目录
2、开始安装
rpm -ivh mysql-community-common-5.7.4-0.2.m14.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.4-0.2.m14.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.4-0.2.m14.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.4-0.2.m14.el7.x86_64.rpm
注:我在执行 “ rpm -ivh mysql-community-server-5.7.4-0.2.m14.el7.x86_64.rpm ” 时报了错
解决方案参考了这篇博文:https://www.cnblogs.com/yorge/p/13266976.html
2.1、安装perlDBI,运行:
yum install perl-DBI
2.2、安装perl的依赖,运行:
yum install -y perl-Module-Install.noarch
中间遇到 “ Is this ok [y/d/N]: ” 全部输入 ' y '
此时重新执行
rpm -ivh mysql-community-server-5.7.4-0.2.m14.el7.x86_64.rpm
即可正常执行。
3、查看安装是否成功
mysqladmin --version
CentOS中操作软件的命令
#启动
systemctl start mysqld
#关闭
systemctl stop mysqld
#重启
systemctl restart mysqld
#查看状态
systemctl status mysqld
可以看见启动成功(running)
查看服务是否自动启动(是:enabled | 否:disabled)
systemctl list-unit-files|grep mysqld.service
设置开机启动:如不是enabled可以运行如下命令设置自启动
systemctl enable mysqld
重新加载服务配置
systemctl daemon-reload
如果希望不进行自启动,运行如下命令设置
systemctl disable mysqld
说明:我看别的博客说安装完成会有临时密码写在 “ /var/log/mysqld.log ”路径下,使用下面的命令可以查看
grep 'temporary password' /var/log/mysqld.log
但我安装成功之后并没有在该文件下发现密码,所以我使用了以下方式免密登录
/etc/my.cnf #windows是my.ini
在my.cnf文件中加入以下代码再重新执行 "mysql -u root" enter即可登录成功
skip-grant-tables
设置完需要重新启动mysql
systemctl restart mysqld
登录成功后设置新的登录密码
update mysql.user set Password=password('你的密码') where user='root';
注:不同的mysql版本可能更新的字段不一样,有的可能是 “ authentication_string ” 字段
update mysql.user set authentication_string=password('你的密码') where user='root';
设置好密码后需将 “ my.cnf ” 文件中刚刚加入的免密登录注释掉(每次更新my.cnf都需要重新启动mysql)
登录上去之后操作数据库时发现依然报错
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement
set PASSWORD=password('你的密码');