MySQL基础命令详解与权限管理

需积分: 49 0 下载量 74 浏览量 更新于2024-07-28 收藏 457KB PDF 举报
本文档全面介绍了MySQL的基本常用命令,涵盖了数据库管理、数据表操作、数据查询以及用户权限设置等方面的内容,对于MySQL初学者和日常运维人员具有很高的实用价值。 1. **显示数据库**: `showdatabases;` 这个命令用于列出MySQL服务器上所有可用的数据库名称,帮助用户了解当前工作环境中的数据库架构。 2. **创建数据库**: `createdatabasename;` 用于在MySQL服务器上创建一个新的数据库,如`createdatabasefirstdb`。这一步通常在初始化或组织数据库结构时执行。 3. **选择/切换数据库**: `usedatabasename;` 用于指定或改变当前正在使用的数据库,确保所有后续操作都在正确的数据库上下文中进行。 4. **删除数据库**: `dropdatabasename` 是一个危险操作,如果误删,可能导致数据丢失。在MySQL 8.0及以上版本,`mysqladmin`命令更安全,如`mysqladmin -u root -p drop dbname`,在删除前会有提示。 5. **查看表**: `showtables;` 显示当前数据库中的所有表,这对于数据管理和备份策略制定至关重要。 6. **表结构查询**: `describetablename;` 可以查看特定表的列名、数据类型和约束条件,有助于理解数据结构。 7. **去重查询**: 在`SELECT`语句中添加`DISTINCT`关键字,可以筛选并返回唯一的值,防止重复结果。 8. **查询版本和日期**: `selectversion(),current_date;` 分别获取MySQL的版本信息和系统当前日期,用于确认安装配置及维护日志记录。 9. **修改用户密码**: 使用shell命令行登录后,通过`updateusersetpassword`更新root用户的密码,如`mysql> update users set password = password('xueok654123') where user = 'root';`。 10. **刷新权限**: `flushprivileges;` 用于刷新已更改的权限,确保新的权限设置立即生效。 11. **切换到特定数据库**: `usedbname;` 或者使用`USE dbname;`命令,进入指定的数据库进行操作。 12. **授权访问**: `grant` 命令用于分配权限给用户,如`grant all on *.* to root@202.116.39.2 identified by "123456";`,允许指定用户(如root)从特定IP地址(202.116.39.2)访问所有数据库和表。 13. **自动创建用户和权限**: 如果未明确创建用户,`GRANT`命令可能会自动创建用户,但通常建议显式创建并管理用户。 通过以上命令的组合,用户可以有效地管理MySQL服务器上的数据库结构、数据安全性和访问权限。掌握这些基本命令有助于提升工作效率和数据库管理能力。