centos7安装mySQL
安装
官网上下载:mysql80-community-release-el7-1.noarch.rpm
- 安装
rpm -ivh mysql80-community-release-el7-1.noarch.rpm
yum -y install mysql-server
- 配置/etc/my.cnf
vi /etc/my.cnf
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
server_id = 1
expire_logs_days = 3
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
- 启动mysqld服务
service mysqld start
- 登录(需要临时密码)
grep "password" /var/log/mysqld.log ##查看临时密码
mysql -u root -p ##使用临时密码登录
- 修改密码
mysql 8.0与之前版本的修改密码方式不一致
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'qhh666888';
但是还会报错,不符合安全规则:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
调整密码验证规则:
set global validate_password.policy=0;
然后再修改密码,成功!
刷新flush privileges;
防火墙配置远程访问
firewall-cmd --permanent --add-port=3306/tcp
远程连接问题
MySQL8.0 安装完成后出现无法远程链接的现象,这是因为MySQL8.0 只支持 localhost 访问,我们必须设置一下才可以远程访问。
具体设置步骤如下:
① 登录MySQL
执行命令为:mysql -u root -p
回车后输入密码
② 选择 mysql 数据库
执行命令为:use mysql;
查看mysql 数据库中存储的用户信息的 user 表。
③ 查看mysql 数据库的 user 表中当前 root 用户的相关信息
执行命令为:select host,user,authentication_string,plugin from user;
执行完命令后显示一个表格, root 用户的 host默认显示的 localhost,说明只支持本地访问,不允许远程访问。
④ 更改 host 的默认配置
执行命令为:update user set host=’%’ where user=‘root’;
⑤再进行授权
grant all privileges on . to ‘root’@’%’ with grant option;
⑥ 刷新
执行命令为:flush privileges;
mysql-connector-java-8.0.11.jar下载地址
hive连接mysql需要相应的连接jar包,因为mysql是8.0版本,所以需要下载相应的jar包。
下载地址:https://dev.mysql.com/downloads/file/?id=477058