CentOS7安装Mysql5.7

原创
2018/09/18 17:03
阅读数 2.4W

1. 环境

MySql下载地址:https://dev.mysql.com/downloads/mysql/
查看MySql其他安装包下载地址:https://dev.mysql.com/downloads/

2.卸载MariaDB

从 CentOS 7 系统开始,MariaDB 成为 yum 源中默认的数据库安装包,要先卸载MariaDB ,否则会有冲突。

#检查 MariaDB 是否安装
rpm -qa|grep mariadb
#卸载全部 MariaDB 相关
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

如下图

卸载MariaDB

3.解压MySql RPM包

tar -xvf mysql-5.7.22-1.el7.x86_64.rpm-bundle.tar

4.安装

请按一下以下顺序安装

rpm -ivh mysql-community-common-5.7.22-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.22-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.22-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.22-1.el7.x86_64.rpm

若出现以下错误信息

请执行下面两行命令

yum install perl
yum install -y net-tools
#yum install perl-JSON.noarch
#yum install "perl(Data::Dumper)"

5.启动mySql

注意:CentOS7 的启动方式和以前不一样,CentOS7 使用了 systemctl

#查看mysql状态
systemctl status mysqld
#启动mysql
systemctl start mysqld

6.登陆数据库

MySQL5.7.6 之后会在启动 mysql 进程的时候生成一个用户密码,首次登陆需要这个密码才行。密码保存在 mysql 进程的日志里,即(/var/log/mysqld.log)

#查找root的登陆密码
cat /var/log/mysqld.log | grep password
#root登陆
mysql -uroot -p
#修改Mysql密码策略,默认是1,即MEDIUM
set global validate_password_policy=0;
#指定了密码中数据的长度
set global validate_password_length=1;
#修改密码
alter user root@localhost identified by '123456';
#使设置立即生效
flush privileges;

7.设置允许远程访问

#允许root远程登陆
grant all privileges on *.* to root@"%" identified by '123456' with grant option;

如果执行失败执行下面的命令

#修改Mysql密码策略,默认是1,即MEDIUM
set global validate_password_policy=0;
#指定了密码中数据的长度
set global validate_password_length=1;

8.防火墙设置

#远程访问 MySQL,需要开放 3306 端口:
firewall-cmd --permanent --zone=public --add-port=3306/tcp
firewall-cmd --permanent --zone=public --add-port=3306/udp
firewall-cmd --reload

#如果是 CentOS 7,需要将 MySQL 服务加入防火墙,然后重启防火墙:
firewall-cmd --zone=public --permanent --add-service=mysql
systemctl restart firewalld

#防火墙相关:
systemctl status firewalld    #查看防火墙状态
systemctl start firewalld    #打开防火墙
systemctl stop firewalld    #关闭防火墙
systemctl restart firewalld    #重启防火墙

9.mysql的sql_mode 模式修改

#错误信息
which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

select @@sql_mode;

修改/etc/my.cnf
[mysqld]
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

修改mysql5.7怎么修改最大连接数

#查看最大连接数
show variables like '%max_connections%' 

#修改/etc/my.cnf 设置
max_connections=1000

#你也可以直接在 mysql 中设置, 这个设置立即生效,但不会改配置文件,也就是说重启 mysql 后恢复成配置文件中的配置值(没有则恢复成默认值 )
set global max_connections=1000;

#设置最大连接数、配置文件my.cnf的mysqld加入这一行
max_connections=1000


展开阅读全文
打赏
0
2 收藏
分享
加载中
更多评论
打赏
0 评论
2 收藏
0
分享
返回顶部
顶部