Centos7下安装配置MySQL5.7
本次安装的版本是在Centos7.6版本下安装配置mysql5.7版本。具体操作步骤如下:
1. 首先通过wget命令,下载MySQL源安装包:
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
安装MySQL源:
yum localinstall mysql57-community-release-el7-11.noarch.rpm
2. 安装MySQL
yum install mysql-community-server
注意:在执行安装命令时可能会出现如下类似报错:报错原因,MySQL GPG 密钥已过期
解决办法: 报错后执行如下命令:rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
然后再次执行yum install mysql-community-server 安装即可
3. 安装成功后启动MySQL服务
systemctl start mysqld
查看MySQL的启动状态: systemctl status mysqld
如果显示如下,则代表启动成功:
4. 可以设置开机启动,执行如下命令:
systemctl enable mysqld
systemctl daemon-reload
5. 修改root本地登录密码:
mysql 安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面方式找root默认密码,然后登录mysql 进行修改
查找密码: grep 'temporary password' /var/log/mysqld.log
使用上面的密码登录mysql : mysql -uroot -p
登录之后会提示让你修改密码,否则无法进行其他操作,修改密码命令:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Xxxxx&123!'; 注意: 此时密码校验规则为中等,即至少一个大写字母、小写字母、数字、特殊符号的组合
或者使用命令: mysql> set password for 'root'@'localhost'=password('Xxxxx&123!');修改密码
通过mysql环境变量可以查看密码策略的相关信息:
mysql> show variables like '%password%';
validate_password_policy:密码策略,默认为MEDIUM策略
validate_password_dictionary_file:密码策略文件,策略为STRONG才需要
validate_password_length:密码最少长度
validate_password_mixed_case_count:大小写字符长度,至少1个
validate_password_number_count :数字至少1个
validate_password_special_char_count:特殊字符至少1个
如果密码策略觉得太复杂可以进行修改:
在/etc/my.cnf文件添加validate_password_policy配置,指定密码策略
# 选择0(LOW),1(MEDIUM),2(STRONG)其中一种,选择2需要提供密码字典文件
validate_password_policy=0
如果不需要密码策略,添加my.cnf文件中添加如下配置禁用即可:
validate_password=off
修改后重新启动mysql服务使配置生效:
systemctl restart mysqld
6. 添加远程登录用户
默认情况下mysql只允许root用户在本地登录,如果要在其他机器上连接mysql,必须修改root允许远程连接
授权方式:
例如,你想root使用123456从任何主机连接到mysql服务器:
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
mysql>FLUSH RIVILEGES
如果你想允许用户zhangsan 从ip为192.168.70.4的机器上连接到mysql服务器,并使用654321作为密码:
mysql>GRANT ALL PRIVILEGES ON *.* TO 'zhangsan'@’192.168.70.4’ IDENTIFIED BY '654321' WITH GRANT OPTION;
mysql>FLUSH RIVILEGES
或者添加一个允许远程连接的帐户,为了安全起见,我添加一个新的帐户:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'lisi'@'%' IDENTIFIED BY 'Xxxxx&123' WITH GRANT OPTION;
7. 配置默认编码为utf8
修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
重启mysql服务, systemctl restart mysqld ,查看mysql默认编码如下所示:
mysql默认配置文件路径:
配置文件:/etc/my.cnf
日志文件:/var/log//var/log/mysqld.log
服务启动脚本:/usr/lib/systemd/system/mysqld.service
socket文件:/var/run/mysqld/mysqld.pid
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步