一:下载Mysql的RPM包
wget 'https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm'
二:安装
yum -y install mysql57-community-release-el7-11.noarch.rpm
三:查看可用的mysql版本
yum repolist all | grep mysql
四:安装mysql
yum install -y mysql-community-server
五:启动mysql
在centos7中,没有了service命令,都是使用systemctl命令。注意启动的时候是
start mysqld
而不是mysql
。
#启动mysql
systemctl start mysqld
#查看mysql状态
systemctl status mysqld
六:修改mysql默认密码
6.1:找到默认密码
mysql5.7的新特性之一就是在初始化的时候会生成一个自定义的密码,然后你需要找到这个密码,登录的时候输入。注意,输入密码的时候是不显示的。
grep 'temporary password' /var/log/mysqld.log
6.2:登录mysql
6.3:修改密码
注意,修改的密码太简单会不给修改,把大小写字母和数字加上就肯定可以了。然后切记切记,mysql里面的命令要加分号!分号!分号!
#这是在mysql内修改密码
SET PASSWORD = PASSWORD('Admin123!');
6.4:设置远程可以登录
#这是在mysql内设置可以外部访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Admin123!' WITH GRANT OPTION;
flush privileges;
七:常规配置
mysql的配置文件真的很多,有的还很蛋疼。比如默认的字符集是拉丁字符集,每次创建数据库的时候要设置字符集;默认还不支持group by语句,默认的时区也不是我们现在的北京时间(东八区),会导致我们的时间差了13个点。针对以上说几个简要的配置,更多的配置在以后遇到了再加上,或者留言吧!
先输入exit退出数据库客户端。
打开配置文件,yum安装的默认在/etc文件夹下:
#修改mysql配置文件
vim /etc/my.cnf
进入文件后,在[mysqld]
标签下输入如下三行代码
#在[mysqld]下面添加,不需要分号字符集:注意是utf8而不是utf-8!
character-set-server=utf8
#这时候使用show variables like 'char%';就可以查看到字符集都是utf8了
#sql支持group by语句
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#设置时区为东八区
default-time_zone = '+8:00'
八:重启mysql服务
systemctl restart mysqld
九:设置开机启动
systemctl enable mysqld
systemctl daemon-reload
十:问题解决
1.解决外部客户端无法连接问题
在Linux中关闭防火墙即可解决
#临时关闭:
systemctl stop firewalld
#禁止开机启动:
systemctl daemon-reload
2.解决yum下载太慢问题
- 备份系统自带的yum源文件
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
- 下载阿里云的yum配置文件
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
- 生成缓存
yum makecache
此时可以尝试重新yum安装mysql