Linux安装MySQL,数据库工具连接Linux的MySQL

1、centOS中默认安装了MariaDB,需要先进行卸载

rpm -qa | grep -i mariadb
rpm -e --nodeps 上面查出来的mariadb

 

2、下载MySQL仓库并安装

wget https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm
yum -y install mysql80-community-release-el7-3.noarch.rpm

 

3、安装MySQL数据库

yum -y install mysql-community-server

 

4、开启MySQL服务

systemctl start mysqld.service

 

5、查看MySQL默认密码

cat /var/log/mysqld.log | grep password

 

6、登录MySQL

mysql -uroot -p

 登录成功后,查看数据库

show databases;  

 选择使用 mysql 数据库

use mysql;

 

7、修改密码

alter user  'root'@'localhost' identified by '你的密码,包括数字、大小写字母和特殊符号,不少于8位数';

 

8、允许远程访问

update user set host = '%' where user = 'root'  and host = 'localhost';

 

9、如果是云服务器,需要在安全组配置开放3306端口

 

10、Navicat for MySQL新建连接,填写IP、端口、用户root和对应密码,测试连接

 


拓展:

MySQL常用命令

查看MySQL的运行状态
service mysqld status

重启MySQL服务
systemctl restart mysqld

停止MySQL的服务
systemctl stop mysqld

 

 查看MySQL初始密码策略

SHOW VARIABLES LIKE 'validate_password%';

 

validate_password.length:密码最小长度
validate_password.mixed_case_count:至少有大小写字母n对,即2*n个
validate_password.number_count:最少数字数量
validate_password.policy:安全强度,默认为中,即1,要求必须包含 数字、符号、大小写字母,长度至少为8位
validate_password.special_char_count:最少符号数量

 

 修改密码长度和策略

set global validate_password.policy=0;
set global validate_password.length=1;

 

 MySQL免密登录(忘记密码)

vi /etc/my.cnf
进入 /etc/my.cnf 文件,找到 [mysqld] ,在其后面添加 skip-grant-tables
修改文件后保存,并重启mysql服务,就可以免密登录了

免密登录 mysql 后可以使用
alter 语句修改密码,再将 my.cnf 文件中的 skip-grant-tables 注释掉
保存该文件后重启 mysql 服务,就可以使用新密码登录了

 

Navicat连接MySQL的时候出现【1251 - Client does not support authentication protocol requested by server】

出现上述问题的原因是:
mysql8之前的版本中加密规则是mysql_native_password
而在mysql8之后,加密规则是caching_sha2_password
把mysql用户登录密码加密规则还原成mysql_native_password 解决方法:
1、alter user 'root'@'%' identified with mysql_native_password by '你的密码'; 2、flush privileges; 3、停止并重启MySQL

 

yum -y install mysql-community-server 时 Failing package is: mysql-community-client   GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

报错原因:MySQL GPG 密钥已过期

解决方法:

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

2、 yum -y install mysql-community-server 

 

在某个数据库添加用户

1、使用目标数据库:USE database_name;
2、添加用户:CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
3、授予用户权限:GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost';
这将授予用户对特定数据库的所有权限。如果你只想为用户授予特定的权限,请将 “ALL PRIVILEGES” 替换为你所需的权限,例如 “SELECT, INSERT, UPDATE, DELETE”。
4、刷新权限:FLUSH PRIVILEGES;

 

卸载MySQL容易漏掉的2个文件
rm -rf /var/log/mysqld.log
rm -rf /etc/my.cnf

posted @ 2022-06-13 11:13  请叫我小马驹  阅读(815)  评论(1编辑  收藏  举报