局域网MySQL部署
1 使用场景
笔者近几个月以来学习、使用mysql都是在自己电脑上进行,通过本地localhost用户连接本地的MySQL服务,mysql中的数据库、表、数据都在自己的电脑里。今天同事想通过WiFi下的WLAN局域网访问我的一个数据库,实现数据共享,于是在网上找了很多方法,最终成功实现,汇总了这篇随笔。
2 部署环境
3 操作步骤
① 首先在我的电脑上启动MySQL服务
(要共享的数据库名为sample)
mysql -uroot -p
输入密码
mysql>
② 创建一个可以访问数据库sample的用户sample_root,密码为654321,拥有对数据库sample的所有权限;
GRANT ALL PRIVILEGES ON sample.* TO sample_root@localhost IDENTIFIED BY "654321";
③允许sample_root可以从任意机器上登入MySQL
GRANT ALL PRIVILEGES ON sample.* TO sample_root@"%" IDENTIFIED BY "654321";
"%"可以换成同事的ipv4地址“192.168.x.x”,表示只能从他的电脑登入MySQL
④刷新授权表
flush privileges;
⑤设置完成,退出。
qiut;
4 测试
接下来在同事电脑上测试一下
①首先验证一下是否能和我的电脑连通
ping 162.168.101.19
- PING (Packe InterNet Groper,因特网包探索器),是一个用于测试网络连接量的程序 。该命令通过向特定的目标主机发送 ICMP(Internet Control Message Protocol ,因特网报文控制协议)Echo 请求报文,测试目标是否可达及了解其有关状态 。
②使用主机的ipv4地址、用户名sample_root,密码654321登入MySQL;
可以看到数据库中出现了sample数据库!
之前同事本地MySQL服务器里是没有sample数据库的,如下图:
③查询sample数据库中sample表的数据
select * from sample
成功查到了数据!
5 扩展
①降低数据库的安全级别以设置简单密码方便登录,
设置安全级别
set global validata_password_policy=0;
设置默认密码长度
set global validate_password_length=6;
②要取消sample_root对sample表删除的权限
Mysql > Revoke delete on sample.* from sample_root@"%"
后续扩展待完善,欢迎评论区一起交流!