卸载mysql
rpm -qa|grep -i mysql
# 卸载命令
yum -y remove + list_name
yum安装
cd /usr/local/src/
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
yum -y install mysql-server
指定安装目录
yum --installroot=/usr/local/mysql --releasever=/ -y install mysql-server )我没试,这样装环境变量配置都不用你管,装上直接启动就行。安装路径是默认的。
默认配置文件路径
/etc/my.conf
# 启动mysql服务
service mysqld restart
# 查看初始密码
grep "password" /var/log/mysqld.log
#报错 You must reset your password using ALTER USER statement before executing this statement.
SET PASSWORD = PASSWORD('Root!!2020');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges;
重置mysql 密码
alter user 'root'@'localhost' identified by 'Root!!2020';
flush privileges;
添加新用户
create user 'root'@'%' identified by 'Root!!2020';
grant all on *.* to 'root'@'%' identified by 'Root!!2020' with grant option;
增加root用户指定可以任意IP登录,如果想限制只能让指定IP登录请把%替换成IP地址
改简单密码
SHOW VARIABLES LIKE 'vali%';
mysql> SHOW VARIABLES LIKE 'vali%';
+--------------------------------------+--------+
| Variable_name | Value |
+--------------------------------------+--------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 8 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | MEDIUM |
| validate_password_special_char_count | 1 |
+--------------------------------------+--------+
# 密码最小长度
validate_password_length
# 至少包含小写或大写字母的个数
validate_password_mixed_case_count
# 至少包含数字的个数
validate_password_number_count
#强度等级
validate_password_policy
【0/LOW】:只检查长度。
【1/MEDIUM】:在0等级的基础上多检查数字、大小写、特殊字符。
2/STRONG】:在1等级的基础上多检查特殊字符字典文件,此处为1。
# 至少要包含的个数字符的个数,此处为1
validate_password_special_char_count
# 关闭密码强度配置
validate_password =off
更改密码 (字段:authentication_string
update mysql.user set authentication_string=password('root') where user='root' ;
设置密码过期时间
#修改配置文件
default_password_lifetime=0
#命令行
ALTER USER 'script'@'localhost' PASSWORD EXPIRE NEVER
忘记密码
# 修改配置文件
skip-grant-tables
#执行命令
update mysql.user set authentication_string=password('root') where user='root' ;
flush privileges;
windows 删除mysql 服务
#使用管理员打开cmd
sc delete MySQL57
修改mysql默认储存路径
# 创建文件夹
mkdir /var/lib/data/mysql/
# mv 或cp 原始数据库目录文件
cp -a /var/lib/mysql /var/lib/mysql/data
备份my.conf
修改配置文件
[client]
port= 3308
socket= /var/lib/data/mysql/mysql/mysql.sock -----路径改到新的存储目录下/var/lib/data/mysql/mysql
[mysqld]
socket= /var/lib/data/mysql/mysql/mysql.sock -----路径改到新的存储目录下/var/lib/data/mysql/mysql
datadir= /var/lib/data/mysql/mysql -----路径改到新的存储目录下/var/lib/data/mysql/mysql
[mysqld_safe]
socket=/var/lib/data/mysql/mysql/mysql.sock -----路径改到新的存储目录下/var/lib/data/mysql/mysql
[mysql.server]
socket=/var/lib/data/mysql/mysql/mysql.sock -----路径改到新的存储目录下/var/lib/data/mysql/mysql
##重启mysql
service mysqld stop
service mysqld start
查看端口是否打开
lsof -i:3306
查看mysql 状态
service mysqld status
php 连接不上
mysql.default_socket =/var/lib/data/mysql/mysql/mysql.sock
查看端口
show global variables like ‘port’;
查看mysql 权限
select * from user;
show grants for root@‘localhost’;
升级
mysql_upgrade -u root -p --force