基于CentOs7本地部署MySQL

目录

Centos7本地部署MySQL. 1

一、环境准备.... 3

二、安装步骤.... 3

2.1、下载MySQL源.... 3

2.2、安装MySQL源.... 3

2.3、检查MySQL源是否安装成功.... 4

2.4、安装MySQL 数据库.... 4

2.5、 查看是否安装成功.... 5

2.6、启动MySQL并检查MySQL运行状态.... 6

2.7,获取首次默认登陆密码.... 6

2.8、授予远程访问权限.... 6

2.9,验证远程连接.... 7

四,Mysql忘记密码,修改密码.... 8

一、环境准备

# 安装之前检测系统是否有自带的MySQL

rpm方式安装,版本5.7

# 由于centOS7中默认安装了MariaDB,需要先进行卸载

rpm -qa | grep mysql #检查是否安装过MySQL

rpm -qa | grep mariadb #检查是否存在 mariadb 数据库(内置的MySQL数据库),有则强制删除

基于CentOs7本地部署MySQL_第1张图片

rpm -e --nodeps mariadb-server-5.5.60-1.el7_5.x86_64 #强制删除

rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64 #强制删除

二、安装步骤

2.1、下载MySQL源

curl -O https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm

2.2、安装MySQL源

yum -y install mysql57-community-release-el7-11.noarch.rpm

基于CentOs7本地部署MySQL_第2张图片

2.3、检查MySQL源是否安装成功

yum repolist enabled | grep "mysql.*-community.*"

出现以下信息表示安装成功了

基于CentOs7本地部署MySQL_第3张图片

2.4、安装MySQL 数据库

列出可安装的软件包

yum list  mysql-community-server

基于CentOs7本地部署MySQL_第4张图片

yum -y install mysql-community-server.x86_64

基于CentOs7本地部署MySQL_第5张图片

在安装server时返回公钥未安装

原因是Mysql的GPG升级了,需要重新获取

基于CentOs7本地部署MySQL_第6张图片

解决方法:

执行以下命令加载公共密钥

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

然后再次安装

yum -y install mysql-community-server

基于CentOs7本地部署MySQL_第7张图片

2.5、 查看是否安装成功

yum list installed mysql-*

基于CentOs7本地部署MySQL_第8张图片

2.6、启动MySQL并检查MySQL运行状态

systemctl start mysqld

systemctl status mysqld

基于CentOs7本地部署MySQL_第9张图片

2.7,获取首次默认登陆密码

grep 'temporary password' /var/log/mysqld.log

以首次获取的默认密码登录MySQL

MySQL –uroot –p

首次部署的mysql在使用之前须先修改默认密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

# 新密码必须8位包含大小写字母以及特殊字符

2.8、授予远程访问权限

# 授予root用户远程访问权限,并刷新权限使生效

grant all privileges on *.* to 'root' @'%' identified by ' new password ';

第一个*是数据库,可以改成允许访问的数据库名称

第二个 是数据库的表名称,代表允许访问任意的表

root代表远程登录使用的用户名,可以自定义

%代表允许任意ip登录,如果你想指定特定的IP,可以把%替换掉就可以了

password代表远程登录时使用的密码,可以自定义

让权限立即生效:flush privileges

2.9,验证远程连接

使用navicat远程连接该数据库

基于CentOs7本地部署MySQL_第10张图片

基于CentOs7本地部署MySQL_第11张图片

三、mysql常用命令

# 查看MySQL安装情况:

rpm -qa | grep mysql

rpm –e --nodeps

# 查找所有MySQL目录:find / -name mysql

# 修改密码。

切换到存储用户名和密码的数据库

use mysql;

update user set password=password(‘新密码’) where user=’需设置新密码的用户’;

# 在5.7版本的mysql中修改密码遇到如下报错

基于CentOs7本地部署MySQL_第12张图片

错误的原因是 5.7版本下的mysql数据库下已经没有password这个字段了,password字段改成了authentication_string

修改密码时需将password改成authentication_string

即:update user set authentication_string=password(‘新密码’) where user=’用户’;

# 授予root用户远程访问权限

grant all privileges on *.* to 'root' @'%' identified by ' password ';

 刷新用户权限列表:flush privileges

四,Mysql忘记密码,修改密码

# 当centos MySQL用户忘记密码,进不去MySQL,需修改密码

# 编辑数据库配置文件

# 在my.cnf配置文件中添加以下指令

vim /etc/my.cnf

skip-grant-tables

# skip-grant-tables的意思就是设置空密码登录

# 保存以上配置并重启mysql服务,是配置生效

输入mysql回车进入改数据库

#改密码首先要进入默认库 use mysql;

UPDATE user SET Password= Password ('密码') WHERE user='root';

# root用户设置新密码

flush privileges; #刷新MySQL的系统权限相关表,否则会出现拒绝访问

# 最后退出MySQL删除my.cnf配置文件中的“skip-grant-tables“

# 重启以下mysql服务

根据版本不同,如果执行上述语句报错,Unkown column “password”in “field list”,原因是新的mysql数据库下已经没有password这个字段了,password字段改成了authentication_string,此时需要将上述语句改为如下所示 :
 

update mysql.user set authentication_string=password('123456') where user='root'and host='localhost';

密码改成功后,需将skip-grant-tables给删除掉。
vim /etc/my.cnf 进行删除

重启mysql服务

service mysqld restart

你可能感兴趣的:(MySQL数据库,mysql,数据库,linux,centos)