Linux安装mysql5.7
查询是否安装mysql
查询是否有mysql的安装:
rpm -qa | grep mysql
查询是否有Mariadb的安装:
rpm -qa | grep mariadb
如果有卸载掉:
yum -y remove 文件名
下载mysql5.7
-
我下载的文件地址为:https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.36-1.el7.x86_64.rpm-bundle.tar
-
将文件解压至linux指定目录中
tar xvf mysql-5.7.36-1.el7.x86_64.rpm-bundle.tar -C ./指定目录
安装
rpm -ivh mysql-community-common-5.7.36-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.36-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.36-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.36-1.el7.x86_64.rpm
如果提示
则安装
yum install libaio
启动mysql
// 启动
systemctl start mysqld
//查看状态
systemctl status mysqld
//关闭
systemctl stop mysqld
配置文件路径: /etc/my.cnf
修改密码&远程访问权限
在日志中查询初始密码(最后面的一串大概12位就是):
cat /var/log/mysqld.log | grep password
登录:
mysql -u root -p
修改密码,直接修改会有一个密码复杂度校验,关闭这个校验,编辑文件my.cnf:vim /etc/my.cnf
在[mysqld]下一行加入:
validate_password=off
重启mysql服务:
systemctl restart mysqld
重新进入sql修改密码:
alter user 'root'@'localhost' identified by '123456';
update mysql.user set authentication_string = password ('新密码') where user = 'root' and host = 'localhost';
更改远程访问:默认禁止
1、更改权限,执行语句中账号密码为系统账号密码(mysql下执行)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '123456' WITH GRANT OPTION;
2、MySQL查询新增加的权限HOST参数是否为%,代表哪里都可以访问,为1代表本机
select * from mysql.user where user='root' \G;
3、打开防火墙3306端口(退出mysql执行)
firewall-cmd --zone=public --add-port=3306/tcp --permanent
4、查询防火墙开放的端口
firewall-cmd --list-ports
5、重启防火墙
systemctl restart firewalld.service
配置文件参数(部分)
[mysqld]
# 表示不区分大小写
lower_case_table_names=1
# 服务端使用的字符集默认为UTF8mb4
character-set-server=utf8mb4
# 服务端使用的字符集默认校验规则
collation_server =utf8mb4_general_ci
# sql 语法校验模式
sql-mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
wait_timeout=2880000
interactive_timeout=2880000
max_allowed_packet=600M
# 密码复杂度校验
validate_password=off