在CentOS7系统中安装MySQL5.7

第一步:下载MySQL包
shell 复制代码
> wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm
第二步:安装MySQL源
shell 复制代码
> rpm -Uvh mysql57-community-release-el7-10.noarch.rpm
第三步:安装MySQL服务端
shell 复制代码
> yum install -y mysql-community-server
第四步:启动MySQL
shell 复制代码
> systemctl start mysqld.service
第五步:检查MySQL是否启动成功
shell 复制代码
> systemctl status mysqld.service
第六步:获取临时密码,MySQL5.7为root用户随机生成了一个临时密码
shell 复制代码
> grep 'temporary paaaword' /var/log/mysqld.log
第七步:通过临时密码登录MySQL
shell 复制代码
> mysql -uroot -p

使用临时密码登录后只能进行修改密码操作,不能进行其他操作。
如果使用临时密码无法登录,可以通过修改MySQL配置文件的方式,先改成无密码登录

  • 首先停止MySQL服务进程
shell 复制代码
> service mysqld stop
  • 编辑MySQL的配置文件my.cnf
shell 复制代码
> vim /etc/my.cnf
  • [mysqld]模块中添加一行内容,忽略MySQL权限问题,直接登录
shell 复制代码
> skip-grant-tables
  • 启动MySQL服务
shell 复制代码
> systemctl start mysqld
  • 无密码直接登录数据库
shell 复制代码
> mysql -uroot -p

回车后仍然提示要输入登录密码,直接再次点击回车即可登录成功

第八步:修改MySQL的密码规则
shell 复制代码
mysql> set global validate_password_policy=0
mysql> set blobal validate_password_length=1
mysql> alter user 'root'@'localhost' identified by 'password'
第九步:授权其他机器远程登录
shell 复制代码
> grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option
> flush privileges
第十步:设置MySQL开机自启动
shell 复制代码
> systemctl enable mysqld
> systemctl daemon-reload
第十一步:设置MySQL的字符集为UTF-8
shell 复制代码
> vim /etc/my.cnf
json 复制代码
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
 
[mysql]
default-character-set=utf8
 
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
default-storage-engine=INNODB
character_set_server=utf8
 
symbolic-links=0
 
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
lower_case_table_names=1

# Ignore MySQL permission issues and login directly
skip-grant-tables
第十二步:取消MySQL无密码登录
shell 复制代码
> vim /etc/my.cnf

编辑my.cnf文件,删除skip-grant-tables

第十三步:重启MySQL令配置生效
shell 复制代码
> service mysqld restart
第十四步:防火墙开放3306端口
shell 复制代码
> firewall-cmd --state
> firewall-cmd --zone=public --add-port=3306/tcp --permanent
> firewall-cmd --reload
相关推荐
老华带你飞33 分钟前
口腔助手|口腔挂号预约小程序|基于微信小程序的口腔门诊预约系统的设计与实现(源码+数据库+文档)
java·数据库·微信小程序·小程序·论文·毕设·口腔小程序
hqxstudying43 分钟前
J2EE模式---服务层模式
java·数据库·后端·spring·oracle·java-ee
Yu_Lijing44 分钟前
MySQL进阶学习与初阶复习第四天
数据库·学习·mysql
大熊程序猿1 小时前
net8.0一键创建支持(Orm-Sqlite-MySql-SqlServer)
数据库·mysql·sqlite
-SGlow-10 小时前
MySQL相关概念和易错知识点(2)(表结构的操作、数据类型、约束)
linux·运维·服务器·数据库·mysql
明月56611 小时前
Oracle 误删数据恢复
数据库·oracle
♡喜欢做梦12 小时前
【MySQL】深入浅出事务:保证数据一致性的核心武器
数据库·mysql
遇见你的雩风12 小时前
MySQL的认识与基本操作
数据库·mysql
dblens 数据库管理和开发工具12 小时前
MySQL新增字段DDL:锁表全解析、避坑指南与实战案例
数据库·mysql·dblens·dblens mysql·数据库连接管理
weixin_4196583112 小时前
MySQL的基础操作
数据库·mysql