CentOS安装MySQL5

目录

  • CentOS安装MySQL
    • 卸载mariaDB
      • 简介
      • 检查是否安装mariaDB
      • 卸载mariaDB
      • 检测是否卸载成功
    • 卸载MySQL
      • 检查是否安装MySQL
      • 卸载MySQL
      • 检测是否卸载成功
    • 删除MySQL目录文件
      • 检测MySQL目录文件
      • 删除目录
    • 删除MySQL用户和组
      • 查看是否有MySQL用户和组
      • 删除MySQL用户和组
    • 安装
      • 查看系统版本
      • 创建文件夹
      • 方式一:在线安装(安装位置不确定)
        • 1.下载和安装YUM源
          • 下载
          • 安装
        • 2.修改YUM源默认安装版本
        • 3.安装MySQL
      • 方式二:离线安装
        • 1.下载rpm源
        • 2.安装
        • 错误:安装community-server
    • 安装完成后初始化
    • 启动MySQL
      • 1.启动MySQL服务
      • 2.查看MySQL的初始密码
      • 3.登录
    • 修改初始密码(即修改root密码)
      • 错误一
    • 远程连接
      • 开启3306端口(或者直接关闭防火墙)
      • root用户默认只允许本机登录访问,解决方案:
        • 方案一:修改root的host属性(不推荐)
        • 方案二:新增远程访问root用户(这个root用户是新增的,个人开发推荐)
        • 方案三:新建远程访问用户
    • 刷新权限
    • 远程测试
    • 退出

CentOS安装MySQL

卸载mariaDB

简介

mariaDB百度百科

​ MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。 MariaDB由MySQL的创始人Michael Widenius(英语:Michael Widenius)主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自Michael Widenius的女儿Maria的名字。
​ MariaDB基于事务的Maria存储引擎,替换了MySQL的MyISAM存储引擎,它使用了Percona的 XtraDB,InnoDB的变体,分支的开发者希望提供访问即将到来的MySQL 5.4 InnoDB性能。这个版本还包括了 PrimeBase XT (PBXT) 和 FederatedX存储引擎。

检查是否安装mariaDB

rpm -qa | grep mariadb

在这里插入图片描述

卸载mariaDB

 rpm -e --nodeps mariadb-libs-5.5.64-1.el7.x86_64

注意:这里卸载的是自己的版本

检测是否卸载成功

即,重复检测是否安装mariaDB

rpm -qa | grep mariadb

卸载MySQL

检查是否安装MySQL

rpm -qa | grep mysql

CentOS安装MySQL5_第1张图片

卸载MySQL

rpm -e --nodeps 要卸载的程序(如上图)

检测是否卸载成功

即,重复检测是否安装MySQL

rpm -qa | grep mysql

删除MySQL目录文件

检测MySQL目录文件

find / -name mysql

删除目录

rm -rf 目录

删除MySQL用户和组

查看是否有MySQL用户和组

# 查看所有用户
cat /etc/passwd
# 查看MySQL用户
more /etc/passwd | grep mysql
# 查看所有用户组
cat /etc/group
# 查看MySQL用户组
more /etc/group | grep mysql

删除MySQL用户和组

# 删除用户
userdel mysql
# 删除用户组
groupdel mysql

安装

MySQL官网

查看系统版本

cat /etc/redhat-release

本人是CentOS7系统

创建文件夹

cd /usr/local
mkdir mysql
cd mysql

方式一:在线安装(安装位置不确定)

1.下载和安装YUM源

下载
  • 这里可以用老方法去创建文件夹用工具上传到服务器,下载地址:

mysql80-community-release-el7-3.noarch.rpm

  • 也可使用服务器使用wget直接联网下载:
wget 网址

CentOS安装MySQL5_第2张图片

在这里插入图片描述

安装
rpm -ivh 下载的文件

在这里插入图片描述

2.修改YUM源默认安装版本

  • 查看可安装的MySQL的命令
yum repolist all | grep mysql

CentOS安装MySQL5_第3张图片

  • 修改安装的版本

因为默认安装的YUM源文件中最新的版本,如果想修改到指定版本可以修改此文件,如不需,可略过此步

vim /etc/yum.repos.d/mysql-community.repo

CentOS安装MySQL5_第4张图片

注意:修改后可以记得重新查一下yum安装命令,看安装版本是否修改成功

3.安装MySQL

yum install -y mysql-community-server

方式二:离线安装

1.下载rpm源

网站

MySQL Community Server 5.7.29

下载文件:

mysql-community-common-5.7.29-1.el7.x86_64.rpm

mysql-community-libs-5.7.29-1.el7.x86_64.rpm

mysql-community-client-5.7.29-1.el7.x86_64.rpm

mysql-community-server-5.7.29-1.el7.x86_64.rpm

可以下载到本地传到服务器,也可用wget命令下载

2.安装

先安装community-common

rpm -ivh mysql-community-common-5.7.29-1.el7.x86_64.rpm

再安装community-libs

rpm -ivh mysql-community-libs-5.7.29-1.el7.x86_64.rpm

再安装community-client

rpm -ivh mysql-community-client-5.7.29-1.el7.x86_64.rpm

最后安装community-server

rpm -ivh mysql-community-server-5.7.29-1.el7.x86_64.rpm

错误:安装community-server

CentOS安装MySQL5_第5张图片

缺少libaionet-tools包:

可自行网上教程安装

安装完成后初始化

mysqld --initialize --user=mysql

启动MySQL

1.启动MySQL服务

# 开启数据库
systemctl start mysqld
# 开机自启数据库
systemctl enable mysqld

2.查看MySQL的初始密码

  • 运行命令
grep 'password' /var/log/mysqld.log

在这里插入图片描述

  • 也可以自己打开日志去查看
vi /var/log/mysqld.log

CentOS安装MySQL5_第6张图片

3.登录

mysql -uroot -p

注意:键入密码时,不显示

修改初始密码(即修改root密码)

ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';

注意:

  • 单引号外面的单词,大小写可以不区分;

  • 语句末尾的“;”必须有,而且语句中的符号必须时英文符号。

错误一

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

在这里插入图片描述

错误解释:您的密码不符合当前策略要求(即密码未达到要求的长度或未包含要求的字符)

注意:此时可以查询下MySQL要求的密码策略

SHOW VARIABLES LIKE 'validate_password%';

哐当!又报错了,ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

在这里插入图片描述

解释:在执行此语句之前,必须使用ALTER USER语句重置密码。

想骂人不?MySQL的设计者是不是脑子有泡?不让查,怎么知道密码要求?。。。

只能先尝试修改密码策略再修改密码,或则你也可以设置复杂的密码试试

解决方法:修改密码策略

# LOW可以设置成0一个意思
set global validate_password_policy=LOW;

在这里插入图片描述

再修改初始密码即可:

alter user 'root'@'localhost' identified by '您的密码';

在这里插入图片描述

远程连接

开启3306端口(或者直接关闭防火墙)

firewall-cmd --permanent --zone=public --add-port=3306/tcp

重启防火墙

firewall-cmd --reload
# 或则
systemctl reload firewalld

关闭防火墙:

# 临时关闭
systemctl stop firewalld
# 永久关闭
systemctl disable firewalld

root用户默认只允许本机登录访问,解决方案:

方案一:修改root的host属性(不推荐)

UPDATE user SET Host='%' WHERE User='root' AND Host='localhost' LIMIT 1;

方案二:新增远程访问root用户(这个root用户是新增的,个人开发推荐)

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '新密码';

方案三:新建远程访问用户

  1. 新建用户
CREATE USER '用户名'@'%' IDENTIFIED BY '密码';
  1. root用户授权数据库给新用户
GRANT all ON 数据库名.表名 TO '用户名'@'%'

刷新权限

flush privileges;

远程测试

可自行利用软件测试(SQLyog、Navicat)

退出

# 好几种方式
# 方式一
\q
# 方式二[]中的可省略
[\]quit
# 方式三
exit

你可能感兴趣的:(服务器,虚拟机,linux,mysql)