linux下安装MySQL---yum安装
安装环境:
操作系统:CentOS 7
mysql版本:5.7
安装步骤:
1.安装前检查是否已经安装了MySQL
rpm -qa | grep mysql
如果安装了,就卸载。通过命令rpm -e 或者rpm -e--nodeps
2.查询yum 上可安装的mysql版本:yum list | grep mysql
查询出没有可安装的mysql,安装mysql,需要配置mysql yum源,mysql官网下载
安装yum 源:
检查是否安装成功:
修改MySQL安装版本,执行命令:vi /etc/yum.repos.d/mysql-community.repo源。例如要安装5.6版本,将5.7的源的enabled = 1修改为enabled = 0。然后再将5.6源的enabled=0改成enabled=1即可
再次查询yum源中mysql版本
3.选择想要安装的版本进行安装
4.查看是否安装成功:
5.启动mysql 服务:systemctl start mysqld,查看服务状态:systemctl status mysqld
6.设置开机自启动:
7.修改登录密码:
mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改。
查看登录密码,执行命令:grep 'temporary password' /var/log/mysqld.log
使用查询到的临时密码使用命令mysql -u root -p登录MySQL,修改密码
由于mysql5.7新增了密码策略,默认策略为:必须包含大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示错误,可以在/etc/my.cnf文件中添加如下配置禁用即可关闭密码策略:validate_password = off
重启mysql 服务,systemctl restart mysqld
再次修改密码为123456就能修改成功。
8.修改数据库编码,mysql数据库的默认编码为latin1,不支持中文,我们将编码设置UTF-8。编辑/etc/my.cnf添加如下配置:
重启服务,查看MySQL字符编码:
使用navicat连接MySQL:
connection选择MySQL,建立一个mysql连接,输入安装mysql的IP地址,端口号,用户名,密码。测试连接。
在测试连接报错,检查防火墙:systemctl status firewalld
发现防火墙是开启的,关闭防火墙,systemctl stop firewalld
重新测试连接,发现又有新的报错:
这个报错是因为密码,错误,检查密码是否正确。
这个报错是因为用户在数据库服务器中的mysql数据库中的user的表中没有权限。
解决步骤:
1.连接数据库 mysql -u root -p
2.查看所有数据库:
3.切换到mysql 数据库,use mysql;
4.查看所有表,show tables;
5.查看user表中的数据:select User,Host,authentication_string from user;
发现root的host是localhost,只能本地连接。
6.更新host为'%',%表示开启远程连接:update user set Host='%' where User='root' and Host='localhost';
7.刷新:flush privileges;
8.再次使用navicat连接:
连接成功啦~