前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >mysql远程连接及用户相关命令

mysql远程连接及用户相关命令

作者头像
全栈程序员站长
发布2022-07-22 12:50:33
2.3K0
发布2022-07-22 12:50:33
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

一、创建用户并授权

登录root:

root@localhost:~# mysql -u root -p

创建 username (用户) 使用password (密码) 从任何主机连接到mysql服务器:

mysql>GRANT ALL PRIVILEGES ON *.* TO ‘username’@’%’ IDENTIFIED BY ‘password’ WITH GRANT OPTION;

添加一个用户名为db_user,密码为db_pass,授权为% (%表示所有外围IP能连接)对db_name数据库所有权限,命令如下:

mysql> GRANT ALL PRIVILEGES ON db_name.* to db_user@’%’ identified by ‘db_pass’;

创建 username2 () 从ip为192.168.1.1的主机连接到mysql服务器,并使用password作为密码:

mysql>GRANT ALL PRIVILEGES ON *.* TO ‘username2’@’192.168.1.1’ IDENTIFIED BY ‘password’ WITH GRANT OPTION;

指定部分权限给用户:

mysql>GRANT select,update on testDB.* to ‘test’@’localhost’ identified by ‘1234’;

授权test用户拥有所有数据库的某些权限:  

mysql>GRANT select,delete,update,create,drop on *.* to ‘test’@’%’ identified by “1234”;

切记:授权完后,刷新系统权限表:

mysql>FLUSH PRIVILEGES;

2019.1.9更新:

新版的的mysql版本已经将创建账户和赋予权限的方式分开了

创建账户:create user ‘用户名’@’访问主机’ identified by ‘密码’;

赋予权限:grant 权限列表 on 数据库 to ‘用户名’@’访问主机’ ;(修改权限时在后面加with grant option)

二、配置mysql允许远程连接

1、开放3306端口

2、打开iptables 3306端口:

root@localhost:~# iptables -I INPUT 4 -p tcp -m state –state NEW -m tcp –dport 3306 -j ACCEPT

root@localhost:~# iptables-save > /etc/iptables.up.rules #保存iptables规则

root@localhost:~# iptables -nvL #查看添加的iptables规则

三、远程连接

1、显示密码

如:连接远程mysql(39.105.189.51),端口“3306”,用户名为“username”,密码“123456”

001:~ host$ mysql -h 39.105.189.51 -P 3306 -u username -p123456

2、隐藏密码

001:~ host$ mysql -h 39.105.189.51 -u username -p

Enter password:

四、其他常用命令

查看MYSQL数据库中所有用户

mysql> SELECT DISTINCT CONCAT(‘User: ”’,user,”’@”’,host,”’;’) AS query FROM mysql.user;

查看数据库中具体某个用户的权限

mysql> show grants for ‘username’@’%’;

删除用户

mysql>Delete FROM user Where User=’test’ and Host=’localhost’;

mysql>flush privileges;

mysql>drop database testDB; //删除用户的数据库

删除账户及权限:

>drop user 用户名@’%’;

>drop user 用户名@ localhost;

修改指定用户密码

  mysql>update mysql.user set password=password(‘新密码’) where User=”test” and Host=”localhost”;

  mysql>flush privileges;

退出mysql:

mysql>exit;

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/125748.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月6,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、创建用户并授权
  • 二、配置mysql允许远程连接
  • 三、远程连接
  • 四、其他常用命令
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档