CentOS7 安装 Mysql 5.7:密码查看与修改、更改端口、开机启动

文章目录

下载 MySQL yum包

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

如果提示:

The GPG keys listed for the "MySQL 5.7 Community Server" repository

are already installed but they are not correct for this package. Check

that the correct key URLs are configured for this repository.

Failing package is: mysql-community-libs-compat-5.7.37-1.el7.x86_64

GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

原因是Mysql的GPG升级了,需要重新获取,使用以下命令即可

shell 复制代码
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

启动MySQL

shell 复制代码
systemctl start mysqld.service

检查是否启动成功:

bash 复制代码
systemctl status mysqld.service

修改密码

方式一:临时密码

获取临时密码,MySQL5.7为root用户随机生成了一个密码

bash 复制代码
grep 'temporary password' /var/log/mysqld.log 

通过临时密码登录MySQL,进行修改密码操作

使用临时密码登录后,不能进行其他的操作,否则会报错,这时候我们进行修改密码操作

bash 复制代码
mysql -uroot -p

ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword';

方式二:skip-grant-tables=1

修改/etc/my.cnf,在 [mysqld] 小节下添加一行

skip-grant-tables=1

这一行配置让 mysqld 启动时不对密码进行验证

重启mysqld 服务

bash 复制代码
systemctl restart mysqld

使用 root 用户登录到 mysql

bash 复制代码
mysql -uroot 

切换到mysql数据库,更新 user 表

bash 复制代码
use mysql
update user set authentication_string = password('123456'),password_expired = 'N', password_last_changed = now() where user = 'root';

在之前的版本中,密码字段的字段名是 password,5.7版本改为了 authentication_string

删除 skip-grant-tables=1

退出 mysql,编辑 /etc/my.cnf 文件,删除 skip-grant-tables=1的内容

授权其他机器远程登录

sql 复制代码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
 
FLUSH PRIVILEGES;
shell 复制代码
vim /etc/my.cnf

开启开机自启动

bash 复制代码
systemctl enable mysqld
systemctl daemon-reload

更改默认端口

修改/etc/my.cnf,在 [mysqld] 小节下添加一行:

bash 复制代码
port=你想要的端口号

重启mysqld 服务:

bash 复制代码
systemctl restart mysqld

常见操作

bash 复制代码
查看mysql是否启动:service mysqld status

启动mysql:service mysqld start

停止mysql:service mysqld stop

重启mysql:service mysqld restart
相关推荐
神仙别闹1 小时前
基于Python(Django)+MySQL 实现(Web)SQL智能检测系统的设计与实现
python·mysql·django
tongyiixiaohuang4 小时前
技术案例分享:金蝶云星空客户数据同步到MySQL的实现
android·数据库·mysql
运维全栈笔记4 小时前
K8S部署WordPress+MySQL:模块化YAML配置详解
服务器·mysql·docker·云原生·容器·kubernetes·服务发现
Rick19935 小时前
mysql 慢查询如何快速定位
数据库·mysql
Vect__5 小时前
MySQL的数据类型和约束
android·数据库·mysql
ChoSeitaku5 小时前
5.MySQL表的约束|空属性|默认值|列描述|主键|自增长|唯一键|外键
android·数据库·mysql
A_aspectJ6 小时前
【Java基础开发】基于 Java Swing +MySQL + JDBC 版实现图书管理系统
java·开发语言·mysql
小菜同学爱学习7 小时前
突破瓶颈!MySQL高级优化与企业级实战场景详解
android·数据库·mysql
小肝一下7 小时前
1. 数据库基础(重点)初阶
数据库·mysql
两点王爷8 小时前
使用命令行备份/还原docker运行的数据库 (MySQL、PostgreSQL)
mysql·docker·容器