”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > MySQL 终端:登录、用户和权限

MySQL 终端:登录、用户和权限

发布于2024-11-02
浏览:843

MySQL Terminal: Login, Users and Permissions

访问MySQL

sudo mysql -u root -p 

sudo mysql -u root -p 命令用于以具有管理权限的 root 用户身份访问 MySQL。运行命令后,会提示输入MySQL root用户密码。

  • sudo:以超级用户权限运行命令。
  • mysql: 启动 MySQL 客户端。
  • -u root:指定您以“root”用户身份连接。
  • -p:请求MySQL询问指定用户的密码。

如果没有为MySQL root用户设置密码,命令可能会失败。如果是这种情况,您可以设置密码或不使用 -p(无密码)选项访问 MySQL。

创建一个新用户

SQL CREATE USER 命令用于在 MySQL 中使用用户名和密码创建新用户。

CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
  • 用户名:您正在创建的新用户的名称。
  • localhost:指定用户只能从运行 MySQL 的服务器连接到 MySQL。如果要允许远程连接,可以将 localhost 替换为 % 或特定的 IP 地址。
  • 密码:将与该用户关联的密码。

创建用户后,需要为其授予权限。

授予用户权限

  • 授予数据库的所有权限

如果要授予特定数据库的所有权限,请使用:

GRANT ALL PRIVILEGES ON database_name.* TO 'user_name'@'localhost';
  • 特定权限

还可以指定权限,如SELECT、INSERT、UPDATE、DELETE等

GRANT permission ON database_name.* TO 'user_name'@'localhost';
  • 特定表的权限

仅授予特定表的权限

GRANT ALL PRIVILEGES ON database_name.table_name TO 'user_name'@'localhost';
  • 授予全局权限

授予所有数据库的权限

GRANT ALL PRIVILEGES ON *.* TO 'user_name'@'localhost';
  • 允许用户向其他用户授予权限
GRANT ALL PRIVILEGES ON *.* TO 'user_name'@'localhost' WITH GRANT OPTION;

更新权限

FLUSH PRIVILEGES 命令用于在 MySQL 中重新加载权限表,使您对用户权限所做的更改生效,无论是使用 GRANT、REVOKE 还是 CREATE USER 命令。

FLUSH PRIVILEGES;

检查权限

SHOW GRANTS FOR 'username'@'localhost';

SHOW GRANTS FOR username'@'localhost;命令显示与 MySQL 中指定用户关联的权限。它对于检查用户对数据库拥有的权限很有用。

撤销权限

REVOKE命令用于删除MySQL中用户的特定权限。

REVOKE ALL PRIVILEGES ON database_name.* FROM 'user_name'@'localhost';
  • 撤销权限后,用户仍然存在,但在指定数据库中没有权限。
  • 建议在撤销权限后运行 FLUSH PRIVILEGES 命令,以确保更改立即应用。

列出用户

SELECT User, Host FROM mysql.user;

SELECT User, Host FROM mysql.user;命令用于查询MySQL中的mysql.user表,该表存储了系统中创建的所有用户的信息。

了解哪个用户已连接

SELECT USER();

选择用户(); MySQL 中的命令返回您在当前会话中使用的用户名和主机名。它是一个显示使用哪个用户帐户连接到数据库的函数,格式为 user@host.

版本声明 本文转载于:https://dev.to/xxzeroxx/mysql-terminal-login-users-and-permissions-53ie?1如有侵犯,请联系[email protected]删除
最新教程 更多>
  • 将图片浮动到底部右侧并环绕文字的技巧
    将图片浮动到底部右侧并环绕文字的技巧
    在Web设计中围绕在Web设计中,有时可以将图像浮动到页面右下角,从而使文本围绕它缠绕。这可以在有效地展示图像的同时创建一个吸引人的视觉效果。 css位置在右下角,使用css float and clear properties: img { 浮点:对; ...
    编程 发布于2025-07-15
  • PHP SimpleXML解析带命名空间冒号的XML方法
    PHP SimpleXML解析带命名空间冒号的XML方法
    在php 很少,请使用该限制很大,很少有很高。例如:这种技术可确保可以通过遍历XML树和使用儿童()方法()方法的XML树和切换名称空间来访问名称空间内的元素。
    编程 发布于2025-07-15
  • 解决Spring Security 4.1及以上版本CORS问题指南
    解决Spring Security 4.1及以上版本CORS问题指南
    弹簧安全性cors filter:故障排除常见问题 在将Spring Security集成到现有项目中时,您可能会遇到与CORS相关的错误,如果像“访问Control-allo-allow-Origin”之类的标头,则无法设置在响应中。为了解决此问题,您可以实现自定义过滤器,例如代码段中的MyFi...
    编程 发布于2025-07-15
  • PHP与C++函数重载处理的区别
    PHP与C++函数重载处理的区别
    作为经验丰富的C开发人员脱离谜题,您可能会遇到功能超载的概念。这个概念虽然在C中普遍,但在PHP中构成了独特的挑战。让我们深入研究PHP功能过载的复杂性,并探索其提供的可能性。在PHP中理解php的方法在PHP中,函数超载的概念(如C等语言)不存在。函数签名仅由其名称定义,而与他们的参数列表无关。...
    编程 发布于2025-07-15
  • 图片在Chrome中为何仍有边框?`border: none;`无效解决方案
    图片在Chrome中为何仍有边框?`border: none;`无效解决方案
    在chrome 中删除一个频繁的问题时,在与Chrome and IE9中的图像一起工作时,遇到了一个频繁的问题。和“边境:无;”在CSS中。要解决此问题,请考虑以下方法: Chrome具有忽略“ border:none; none;”的已知错误,风格。要解决此问题,请使用以下CSS ID块创建带...
    编程 发布于2025-07-15
  • 如何使用组在MySQL中旋转数据?
    如何使用组在MySQL中旋转数据?
    在关系数据库中使用mySQL组使用mySQL组进行查询结果,在关系数据库中使用MySQL组,转移数据的数据是指重新排列的行和列的重排以增强数据可视化。在这里,我们面对一个共同的挑战:使用组的组将数据从基于行的基于列的转换为基于列。 Let's consider the following ...
    编程 发布于2025-07-15
  • 为什么使用固定定位时,为什么具有100%网格板柱的网格超越身体?
    为什么使用固定定位时,为什么具有100%网格板柱的网格超越身体?
    网格超过身体,用100%grid-template-columns 为什么在grid-template-colms中具有100%的显示器,当位置设置为设置的位置时,grid-template-colly修复了?问题: 考虑以下CSS和html: class =“ snippet-code”> g...
    编程 发布于2025-07-15
  • Java中如何使用观察者模式实现自定义事件?
    Java中如何使用观察者模式实现自定义事件?
    在Java 中创建自定义事件的自定义事件在许多编程场景中都是无关紧要的,使组件能够基于特定的触发器相互通信。本文旨在解决以下内容:问题语句我们如何在Java中实现自定义事件以促进基于特定事件的对象之间的交互,定义了管理订阅者的类界面。以下代码片段演示了如何使用观察者模式创建自定义事件: args)...
    编程 发布于2025-07-15
  • 如何有效地转换PHP中的时区?
    如何有效地转换PHP中的时区?
    在PHP 利用dateTime对象和functions DateTime对象及其相应的功能别名为时区转换提供方便的方法。例如: //定义用户的时区 date_default_timezone_set('欧洲/伦敦'); //创建DateTime对象 $ dateTime = ne...
    编程 发布于2025-07-15
  • Java中Lambda表达式为何需要“final”或“有效final”变量?
    Java中Lambda表达式为何需要“final”或“有效final”变量?
    Lambda Expressions Require "Final" or "Effectively Final" VariablesThe error message "Variable used in lambda expression shou...
    编程 发布于2025-07-15
  • 为什么使用Firefox后退按钮时JavaScript执行停止?
    为什么使用Firefox后退按钮时JavaScript执行停止?
    导航历史记录问题:JavaScript使用Firefox Back Back 此行为是由浏览器缓存JavaScript资源引起的。要解决此问题并确保在后续页面访问中执行脚本,Firefox用户应设置一个空功能。 警报'); }; alert('inline Alert')...
    编程 发布于2025-07-15
  • 对象拟合:IE和Edge中的封面失败,如何修复?
    对象拟合:IE和Edge中的封面失败,如何修复?
    To resolve this issue, we employ a clever CSS solution that solves the problem:position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%)...
    编程 发布于2025-07-15
  • 如何使用PHP从XML文件中有效地检索属性值?
    如何使用PHP从XML文件中有效地检索属性值?
    从php PHP陷入困境。使用simplexmlelement :: attributes()函数提供了简单的解决方案。此函数可访问对XML元素作为关联数组的属性: - > attributes()为$ attributeName => $ attributeValue){ echo ...
    编程 发布于2025-07-15
  • 在Java中使用for-to-loop和迭代器进行收集遍历之间是否存在性能差异?
    在Java中使用for-to-loop和迭代器进行收集遍历之间是否存在性能差异?
    For Each Loop vs. Iterator: Efficiency in Collection TraversalIntroductionWhen traversing a collection in Java, the choice arises between using a for-...
    编程 发布于2025-07-15
  • 在GO中构造SQL查询时,如何安全地加入文本和值?
    在GO中构造SQL查询时,如何安全地加入文本和值?
    在go中构造文本sql查询时,在go sql queries 中,在使用conting and contement和contement consem per时,尤其是在使用integer per当per当per时,per per per当per. 在GO中实现这一目标的惯用方法是使用fmt.spr...
    编程 发布于2025-07-15

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3