1.进入到要存放安装包的位置
cd /usr/local/mysql
2.下载mysql5.7的YUM源:
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
3.安装 mysql57-community-release-el7-8.noarch.rpm:
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
4.安装MySQL,出现提示的话,一直Y就可以了
yum install mysql-server
5.运行mysql
service mysqld start
6.查询/var/log/mysqld.log 文件中自动生成的随机的密码,登录 MySQL 服务端:
grep "password" /var/log/mysqld.log
将会返回如下内容, UpSmvzq=z1fB就是密码:
A temporary password is generated for root@localhost: UpSmvzq=z1fB
7.用随机密码登录
mysql -u root -p
UpSmvzq=z1fB
8.刚安装的mysql的密码默认强度是最高的,如果想要设置简单的密码就要修改validate_password_policy的值
Policy | Tests Performed |
---|---|
0 or LOW |
Length |
1 or MEDIUM |
Length; numeric, lowercase/uppercase, and special characters |
2 or STRONG |
Length; numeric, lowercase/uppercase, and special characters; dictionary file |
设置安全级别:
set global validate_password_policy=0;
默认密码长度为8,设置其值为最小4位:
set global validate_password_length=4;
9.更改密码
set password = password('new password');
alter user 'root'@'localhost' password expire never;
flush privileges;
设置用户 root 可以在任意 IP 下被访问:
grant all privileges on *.* to root@"%" identified by "new password";
设置用户 root 可以在本地被访问:
grant all privileges on *.* to root@"localhost" identified by "new password";
刷新权限使之生效:
flush privileges;
OK,输入 exit 后用新密码再次登录看看吧!
注意:如果用远程工具还是连接不上,试试用 iptables -F 命令来清除防火墙中链中的规则
8.MySQL控制命令:启动、停止、重启、查看状态
service mysqld start
service mysqld stop
service mysqld restart
service mysqld status
systemctl start mysqld
service mysqld stop
service mysqld restart
systemctl status mysqld
设置 MySQL 的字符集为 UTF-8:
打开 /etc 目录下的 my.cnf 文件(此文件是 MySQL 的主配置文件):
vim /etc/my.cnf
在 [mysqld] 前添加如下代码:
[client]
default-character-set=utf8
在 [mysqld] 后添加如下代码:
character_set_server=utf8
再登录mysql,看看字符集,6个utf8就算OK
show variables like '%character%';
查看指定的数据库中指定数据表的字符集,如查看 mysql 数据库中 servers 表的字符集:
show table status from mysql like '%servers%';
查看指定数据库中指定表的全部列的字符集,如查看 mysql 数据库中 servers 表的全部的列的字符集:
show full columns from servers;
忘记密码时,可用如下方法重置:
service mysqld stop
mysqld_safe --user=root --skip-grant-tables --skip-networking &
mysql -u root
进入MySQL后
use mysql;
update user set password=password("new_password") where user="root";
flush privileges;
一些文件的存放目录
配置文件
vim /etc/my.cnf
存放数据库文件的目录
cd /var/lib/mysql
日志记录文件
vim /var/log/ mysqld.log
服务启动脚本
/usr/lib/systemd/system/mysqld.service
socket文件
/var/run/mysqld/mysqld.pid