MySQL笔记 2
首先登陆MySQL
1.创建数据库
创建我的第一个MySQL数据库
语句:Create database collect_history_db;
结果出现了错误,提示如下:
创建失败,报错信息:MySQL错误 + ERROR 1820(HY000):You must reset your password using ALTER USER statement before executing this statement
报错原因
在第一次初始化并启动MySQL之后,系统自动生成了初始默认密码,但是如果要执行其他的操作,必须要先修改MySQL的密码。
解决方案
重新设置MySQL密码。
mysql> SET PASSWORD = '123';
此时我就将密码修改为了123。更改密码后创建成功。
2.创建数据表:
3.分配用户远程访问权限
查看用户列表
use mysql;
SELECT user,host FROM user;
mysql8.0.18 开启远程访问设置方法
方法1
// 添加用户 root
// 注意:‘root’也可以写完root(不需要单引号)
// @'%'表示全部IP(即,在全部IP上都可以使用这个用户)
//修改密码认证方式为 mysql_native_password
CREATE USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123123';
// 授权过程 *.* 表示全部数据库的全部表
GRANT ALL ON *.* TO 'root'@'%';
方法2
CREATE USER 'root'@'%' IDENTIFIED BY '123123';
//默认的密码认证插件caching_sha2_password
GRANT ALL ON *.* TO 'root'@'%';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123123';
4. Winows 系统 防火墙开放端口
Windows防火墙会阻止远程访问MySQL服务器,解决方法有2种:1,关闭防火墙(简单粗暴,但安全性差);2,防火墙开放外部访问端口(推荐做法);
名词解释:出站就是你访问外网 入站就是外网访bai问你, 用户可以创建入站和出站规则,从而阻挡或者允许特定程序或者端口进行连接。
下面介绍在防火开放外部访问端口
例如MySQL Client(远程客户端) 想通过3306端口访问MySQL服务器,而你的服务器没有开放3306端口,通过以下操作可以开放3306端口;
1.打开控制面板——Windows防火墙——高级设置
上图为win10截图;
2.先进行入站规则设置
设置完毕后(下图为之前设置好的)
这是客户端 已经可以访问 MySQL服务器端了;
3.出站规则设置
出站规则与入站规则类似;