安装Mysql 5.7
官方下载地址::https://downloads.mysql.com/archives/community/
选择centos7版本的yum源mysql配置文件,浏览器下载导入到服务器或者直接在服务器下载,虽然显示的是mysql80,不过没关系,里面包含mysql57版本的信息
wget https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm
安装yum源mysql配置文件
在下载文件的目录下执行下面命令,安装yum源mysql配置文件
yum -y install mysql80-community-release-el7-3.noarch.rpm
查看yum源mysql配置信息
yum repolist all | grep mysql
此时就有mysql的相关信息了,也可以在/etc/yum.repos.d/mysql-community.repo文件中看到mysql的相关信息
调整yum默认安装mysql版本为mysql57
上图可以看出,此时默认安装的是mysql80,我们要安装mysql57,需要调整mysql57为enabled
yum-config-manager命令不可用,先安装
yum -y install yum-utils
取消mysql80-community的默认安装
yum-config-manager --disable mysql80-community
使mysql57-community成为yum默认安装版本
yum-config-manager --enable mysql57-community
此时再查看,mysql57为enabled了
安装mysql
都准备好了,就可以正式安装mysql了
yum -y install mysql-community-server
可以看出,安装的时候是没有版本信息的,所有一定要先调整mysql的配置文件再安装
报错:仓库 "MySQL 5.7 Community Server" 的 GPG 密钥已安装,但是不适用于此软件包。请检查仓库的公 钥 URL 是否配置正确
网上蛮多资料,但都没能解决问题,最后成功处理的方法记录下。rm /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
启动mysql
systemctl start mysqld.service
yum安装后就直接托管给systemctl了,在/lib/systemd/system/mysqld.service文件中可以看到真实配置的启动、关闭、重启等命令
查看运行状态
systemctl status mysqld.service
上图,表示正常运行了
找到mysql默认密码,第一次连接数据库的时候需要,之后就换成自己设置的
grep "password" /var/log/mysqld.log
连接数据库
此时需要用默认密码连接数据库
mysql -uroot -p
执行完以上命令会提示输入密码
修改密码级别
可选,默认的密码级别需要设置复杂的密码
set global validate_password_length=4;
set global validate_password_policy=0;
若想重启后仍有效,可以修改配置文件/etc/my.cnf,在[mysqld]节点增加如下配置
validate_password_length = 4
validate_password_policy = 0
修改密码
修改密码('root'@'localhost' 是user表中的一条数据的字段)
ALTER USER 'root'@'localhost' IDENTIFIED BY '自己的密码';
下面命令可以查看密码级别的相关配置,修改密码之前貌似不能查
SHOW VARIABLES LIKE 'validate_password%';
支持远程访问
相当于在user表中添加一条数据,'root'@'%'是这条数据的字段
grant all privileges on *.* to 'root'@'%' identified by '自己的密码' with grant option;
上面命令表示:root用户在所有主机(%)都可以用 自己的密码 登录,all privileges on *.*表示授所有权限
刷新系统权限等数据,使配置立即生效
flush privileges;
此时就可以在在自己的电脑用客户端工具远程连接mysql了,要注意防火墙,阿里云还要配置出口安全策略
修改字符集
修改mysql的字符集,默认是Latin1,ISO-8859-1的简称,我们修改成utf8
使用status查看
status
退出mysql
exit
修改配置文件/etc/my.cnf,yum安装就会是这个目录下的文件
vi /etc/my.cnf
新增[client]节点
[client]
default-character-set=utf8
[mysqld]节点增加两行
character-set-server=utf8
collation-server=utf8_general_ci
保存修改,重启mysql
service mysqld restart
登录,再查看状态,就变成了utf8了,查看字符集还可以用以下命令
show variables like 'character%';
mysql5.6稳定版本
1、安装mysql rpm包仓库,centos自带mariadb用不习惯
rpm -ivh http://repo.mysql.com/yum/mysql-5.6-community/el/6/x86_64/mysql-community-release-el6-5.noarch.rpm
2、安装mysql5.6
yum install -y mysql-community-server
3、启动数据库并开机启动
systemctl start mysqld
systemctl enable mysqld
4、进入数据库mysql
(1)、新安装的mysql会自带一个密码通过grep 'temporary password' /var/log/mysqld.log获取,如果是空的话需要我们修改my.cnf跳过密码登录
vim /etc/my.cnf,在[mysqld]下添加skip-grant-tables
然后重新启动mysql
systemctl restart mysqld
(2)、进入数据库修改密码
mysql -uroot -p
use mysql;
update user set password=password('123@admin') where user='root';
flush privileges;
quit;
然后去掉skip-grant-tables重新重启mysql通过上面的密码重新进入数据库