mysql默认安装的位置:/var/lib/local/mysql
一、卸载MySQL
1、首先停止mysql服务
systemctl stop mysqld
2、卸载mysql 软件包
rpm -qa |grep mysql | xargs rpm -e --nodeps
查看mariadb数据库包
rpm -qa | grep mariadb
rpm -e --nodeps mariadb-libs #--nodeps忽略依赖关系导致删除不掉的原因。
3、删除mysql数据目录
MySQL 的数据文件通常存储在/var/lib/mysql。删除这个目录将移除所有数据库文件,包括所有用户数据和配置。
rm -rf /var/lib/mysql
4、删除 MySQL 配置文件
删除 MySQL 配置文件,通常位于/etc/my.cnf或/etc/my.cnf.d
rm -f /etc/my.cnf /etc/my.cnf.d/*mysqld.cnf
5、删除mysql用户和组
userdel -r mysql
groupdel mysql
6、清理残留文件
:使用 yum的清理功能来删除任何不再需要的依赖文件。
yum clean all
查看版本号:
mysql -V
ss -tulnp | grep :3306
一、yum安装(服务器有网可以使用这个)
官网:MySQL :: MySQL Community Downloads (yum安装官网现在只有8版本以后)
这个网址有历史版本通过yum安装:Index of /232905 (mysql.com)
选择需要的版本复制它的连接
1、在线下载仓库
wget http://repo.mysql.com/mysql57-community-release-el7.rpm
2、安装仓库
yum -y install mysql80-community-release-el7-3.noarch.rpm
3、安装MySQL
yum install -y mysql-community-server (安装这个包它会自动把其他安装包依赖全部装好,
a、如果这个命令执行过程出现unable to find a match: mysql-community-server
通过 yum module disable mysql解决
b、如果出现GPG验证失败就执行:yum -y install mysql-community-server --nogpgcheck
)
4、如果没有yum工具,使用
yum -y install yum-utils #安装yum工具包
5、查看mysql的yum源配置:
vim /etc/yum.repos.d/mysql-community.repo
6、启动数据库
systemctl start mysqld
systemctl enable mysqld
安装好后连接数据库:(有两种方法改密码复杂度)第一种:一次性简单密码
1、查看原始密码:
grep 'password' /var/log/mysqld.log
2、重置密码:
在没有改密码之前使用sql命令会报错:
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
3、在在/etc/my.cnf文件下:加入skip-grant-tables
vim /etc/my.cnf。中加入skip-grant-tables
4、然后关闭mysql服务
service mysqld stop
5、重启MySQL服务
service mysqld start
6、再次连接MySQL,输入任意密码即可进入
mysql -uroot -p123456
7、查看数据库,并且使用mysql数据库。
use mysql
8、此时输入我想要的密码即可。
update user set authentication_string=password('密码') where user='root';
9、设置完成后,删除/etc/my.cnf文件中的skip-grant-tables,重启mysql服务即可。
service mysqld start 或者systemctl restart mysqld
10、连接物理机的nacivat
方法:
主root:
grant all privileges on . to 'root'@'localhost' identified by '123'; (localhost这个名字必须和自己电脑设置的主机名相同,防护墙必须关闭,所要关闭的端口)mysql -u root -p
虚拟机安装MySQL的那个IP地址:
grant all privileges on . to 'root'@'10.0.20' identified by '234';mysql -h 10.0.0.20 -u root -p
把权限全部放出:
grant all privileges on . to 'root'@'%' identified by '333';
flush privileges;
select * from user \G #这个是看mysql用户权限的。
第二种:修改密码策略
1、修改初始化密码
alter user 'root'@'localhost' identified by 'BuGu123456!';
简单密码:
alter user 'root'@'localhost' identified by '123456';
2、修改MySQL校验密码的安全策略
#设置密码长度的最低位数
#set global validate_password.length=4;
设置密码的安全等级,修改密码安全策略为低(只校验密码长度,至少8位)
#修改密码复杂度策略(即不验证复杂度)
#set global validate_password.policy=LOW;
或者
set global validate_password_policy=0;
在/etc/my.cnf文件中添加以下东西。
[mysqld]
#码复杂度策略
validate_password_policy=0
#设置字符集支持中文
character-set-server=utf8
然后重启
systemctl restart mysqld
SET GLOBAL validate_password_length = 4;
SET GLOBAL validate_password_mixed_case_count = 0;
SET GLOBAL validate_password_number_count = 0;
SET GLOBAL validate_password_special_char_count = 0;
检查:
SHOW VARIABLES LIKE 'validate_password%';
设置密码
ALTER USER 'root'@'%' IDENTIFIED BY '你的简单密码';
重启MySQL:
sudo systemctl restart mysqld
3、测试是否正常工作
show databases;
exit #退出
4、进行远程连接
查询防火墙是否关闭:systemctl status fire
关闭防火墙:systemctl stop fire
给用户设置远程访问权限
查看用户的访问权限:在mysql库的user表中:
select host ,user, plugin from user;
5、设置用户远程连接访问:
首先获取:
grep 'password' /var/log/mysqld.log
进去以后第一件事改密码:
alter user 'root'@'localhost' identified by 'BuGu123456!
改好密码后,就是降低密码策略和修改远程登录权限。(5.7版本和8版本都使用以下命令)
update user set host='%' where user='root';
flush privileges
查看修改情况:
select host ,user, plugin from user;
修改密码策略:
SET GLOBAL validate_password_length = 4;
SET GLOBAL validate_password_mixed_case_count = 0;
SET GLOBAL validate_password_number_count = 0;
SET GLOBAL validate_password_special_char_count = 0;
再次设置简单密码:
alter user 'root'@'%' identified by '123456'
------------------下面这个命令暂时不用管-----------------------
#修改密码策略的同时,将当前 root 用户的密码的验证策略也修改一下,否则当前用户的密码会失效,使得 root 用户无法使用原密码登录 MySQL 服务,目前我知道的解决办法就是重新安装 MySQL
# alter user 'root'@'%' identified with mysql_native_password by '123456';
二、离线安装(先从网上下载,在用yum安装)
5.7版本的下载文件包是.tar文件和8.0版本一样。
安装时,可以通过yum localinstall mysql-community-*.rpm
它会自动解决安装依赖问题,但是自己后面要把
从官网上复制链接,通过wget下载
wget https://dev.mysql.com/get/Downloads/MySQL-8.4/mysql-8.4.1-1.el8.x86_64.rpm-bundle.tar
在/usr/local/目录下创建一个/mysql目录。(一般放在/usr/local目录下)
mkdir /usr/local/mysql
将压缩的文件放入里面
mv /root/mysql-8.4.1-1.el8.x86_64.rpm-bundle.tar /usr/local/mysql
# 在/usr/local/mysql目录解压
tar -xvf mysql-8.4.1-1.el8.x86_64.rpm-bundle.tar
离线安装5.7版本方式顺序:
rpm -ivh mysql-community-common-5.7.44-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.44-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.44-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.44-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-5.7.44-1.el7.x86_64.rpm
或者直接使用:yum localinstall *.rpm
--------------------------------------------------------------------------------------------------
离线安装8.0版本方式:
rpm -ivh mysql-community-common
rpm -ivh mysql-community-client-plugins
rpm -ivh mysql-community-libs
rpm -ivh mysql-community-client
rpm -ivh mysql-community-icu-data-files
rpm -ivh mysql-community-devel #执行这个语句的时候,会提醒你还没有安装openssl-devel yum install openssl-devel -y
rpm -ivh mysql-community-server #执行这个语句的时候,如果没有成功,检查一下是否有perl和libaio yum list perl 和yum list libaio
检查出来后,安装yum instal perl.x86_64 和 yum install libaio*
---------------------------------------------------------------------------------------------
安装顺序:Linux 安装 MySQL【CentOS】_linux 安装mysql-CSDN博客
安装好,在修改密码时,不仅要修改root权限,还要修改密码策略。才能远程连接上。
在 MySQL 5.7 及以上版本中,创建用户和授予权限是分开的步骤。你可以先创建用户,然后授予权限:
-- 创建用户
CREATE USER 'root'@'10.0.0.10' IDENTIFIED BY '123456';
-- 授予权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.0.0.10' WITH GRANT OPTION;
三、tar.gz包源码离线安装(自己指定路径)
下一篇讲解