0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用MySQL数据库要学习的所有重要命令

jf_ZqFkd6Up 来源:Linux迷 2023-05-23 12:26 次阅读

MySQL 是一个支持结构化查询语言 (SQL) 的开源关系数据库管理系统。它有助于开发各种基于 Web 的应用程序和在线内容。MySQL 可以在 Linux/UNIX、macOS、Windows 等所有操作系统平台上运行,并且是 LAMP 堆栈的重要组件。

MySQL 是最受欢迎的数据库系统之一,许多云提供商将其作为其服务的一部分提供。它使用带有查询和数据的命令,通过与数据库通信来执行任务和功能。本文介绍了最常用的 MySQL 语句,这些语句允许用户有效地使用数据库。

使用 MySQL 客户端

MySQL 允许您使用命令行工具mysql之类的客户端连接到服务器。使用-u-p标志提供您的用户名和密码:


mysql -u [username] -p
mysql -u [username] -p [database]
完成后,退出 MySQL 命令行客户端,如下所示:

exit
使用用户帐户

要创建一个新用户帐户,请打开新终端以 root 身份访问 MySQL,并创建一个新用户,如下所示:


$ sudo mysql -u root -p
...
mysql> CREATE USER 'username' IDENTIFIED BY 'password';
您还可以通过指定他们必须从以下位置访问数据库的主机来设置具有受限访问权限的用户帐户:

CREATE USER 'user'@'localhost';
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
要指定远程连接,您可以将“localhost”替换为机器的 IP 地址,如下所示:

CREATE USER 'username'@'ip_address' IDENTIFIED BY 'password';
最后,您可以使用以下语句删除帐户:

DROP USER 'user'@'ip_address' IDENTIFIED BY 'password';
用户帐户权限

在继续之前,您需要在新用户帐户上设置适当的权限。这避免了数据库内不必要的用户访问的风险。

您可以使用 GRANT、REVOKE 和 ALTER 等语句在 MySQL 中使用用户权限。根据您希望用户能够执行的操作,您可以分配全部或部分权限。这些权限是 ALL PRIVILEGES、SELECT、UPDATE、INSERT、DELETE、CREATE、DROP 和 GRANT OPTION。

您可以将插入数据的管理权限分配给属于任何数据库的所有表:


GRANT INSERT ON *.* TO 'username'@'ip_address';
但是,您也可以通过在句点之前指定数据库来限制用户访问。您可以允许用户在数据库中的所有表中选择、插入和删除数据,如下所示:

GRANT SELECT, INSERT, DELETE ON database.* TO 'user'@'ip_address' IDENTIFIED BY 'pa
ssword';
同样,您可以通过在句点后指定表名来限制用户对特定表的访问。

GRANT SELECT, INSERT, DELETE ON database.table_name TO 'user'@'ip_address' IDENTIFIED
 BY 'password';
您可以向特定数据库中的每个表授予所有权限,如下所示:

GRANT ALL PRIVILEGES ON database.* TO 'user'@'ip_address' IDENTIFIED BY 'password';
要从单个数据库撤消用户的权限:

REVOKE ALL PRIVILEGES ON database.* FROM 'user'@'ip_address';
您可以撤销每个数据库的所有用户权限,如下所示:

REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'user'@'ip_address';
最后,您可以像这样设置密码:

SET PASSWORD FOR 'user'@'ip_address' = PASSWORD('new_password');
请注意使用散列明文密码的 PASSWORD 函数。

使用数据库

您可以创建一个名称尚不存在的新数据库:


CREATE DATABASE database_name;
您可以将当前数据库切换到要使用的另一个数据库:

USE database_name;
最后,您可以删除整个数据库及其表,如下所示:

DROP DATABASE database_name;
使用表

表是MySQL 数据库的主要结构元素,将一组相关记录分组为行。每行都有不同数据类型的列,可以是 CHAR、VARCHAR 和 TEXT 等。

创建表的一般语法如下:


CREATE TABLE table_name (column_1 data_type1, column_2 data_type2);
您还可以通过选择特定列从现有表创建新表,如下所示:

CREATE TABLE new_table_name AS SELECT column_1, column_2 FROM existing_table_name;
您可以使用以下命令将数据添加到表中:

INSERT INTO table_name (column_1, column_2) VALUES (value_1, value_2);
要删除表,请使用 DROP TABLE 语句,如下所示:

DROP TABLE table_name;
或者您保留表格但使用以下方法删除其所有数据:

TRUNCATE TABLE table_name;
访问数据库

使用以下语句显示 MySQL DMS 中的所有可用数据库:


SHOW DATABASES;
同样,您可以列出当前数据库中的所有表:

SHOW TABLES;
要查看表中的所有列:

DESCRIBE table_name;
要在表格中显示列信息

DESCRIBE table_name column_name;
查询数据库

MySQL 允许您使用SELECT语句从数据库中查询数据。您可以使用各种 MySQL 子句来扩展其基本功能。 以下语句返回由表中每一行的两列组成的结果集:


SELECT column1, column2 FROM table_name;
或按如下方式显示所有列:

SELECT * FROM table_name;
您还可以使用以下条件查询数据库/表并检索信息:

SELECT column1, column2 FROM table_name WHERE condition;
SELECT 语句还允许您使用 GROUP BY 子句按一列或多列对结果集进行分组。然后,您可以使用聚合函数来计算汇总数据:

SELECT COUNT(CustomerID), Country FROM Customers GROUP BY Country;
更新表

您可以使用 UPDATE 或 ALTER 语句修改表内的数据。UPDATE 语句允许您更新现有的单个或多个记录/行。 以下 MySQL 命令更改UserID2的单个记录的UserNameCity


UPDATE Users SET UserName = 'Alfred James', City= 'Munich' WHERE UserID = 2;
虽然此示例更新了CityMunich的所有记录的所有UserName

UPDATE Users SET UserName='Juan' WHERE City='Munich';
您可以像这样向表中添加列:

ALTER TABLE table_name ADD COLUMN column_name;
要从表中删除列,请使用 ALTER TABLE 语句,如下所示:

ALTER TABLE table_name DROP COLUMN column_name;
初学者的 MySQL

在本文中,您已经看到了最常见的 MySQL 命令。它们使您能够管理用户帐户、更改数据库结构和操作数据。

一旦您熟悉了基础知识,了解 MySQL 和安全性就会很有用。您的数据库可能包含有价值和敏感的个人数据,因此保护其免受窥探至关重要。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11290

    浏览量

    209295
  • 数据库
    +关注

    关注

    7

    文章

    3793

    浏览量

    64340
  • 开源
    +关注

    关注

    3

    文章

    3305

    浏览量

    42465
  • 命令
    +关注

    关注

    5

    文章

    683

    浏览量

    22011
  • MySQL
    +关注

    关注

    1

    文章

    804

    浏览量

    26524
收藏 人收藏

    评论

    相关推荐

    如何在Rust中连接和使用MySQL数据库

    如何在Rust中连接和使用MySQL数据库。 安装 mysql 模块 这里我们假设你已经安装了Rust编程语言工具链,在本教程中,我们将使用 mysql crate来连接和使用
    的头像 发表于 09-30 17:05 1666次阅读

    如何用labview对数据库进行备份/如何在MySql中使用命令的方式进行数据库备份(非cmd窗口非手动保存)

    想要使用labview对数据库进行备份,但是不清楚语句,在网上查找的信息中,显示如果备份数据库有两个方法1:使用命令mysqldump ,但是mysqldump
    发表于 07-15 16:48

    MySQL数据库误删后的回复技巧

    在日常运维工作中,对于数据库的备份是至关重要的!数据库对于网站的重要性使得我们对 MySQL 数据库
    发表于 05-05 08:02 2351次阅读
    <b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b>误删后的回复技巧

    什么是MySQL数据库?ASPNET和MySQL数据库的入门简介

    在ASP时代,如果我们建立一个数据库驱动的web站点,那么你可以选择环很多钱的微软SQL SERVER数据库或者选择要花很多时间来寻找达到性能和稳定性统一的ACCESS数据库,但在.
    发表于 11-22 16:20 4次下载

    MySQL数据库如何安装和使用说明

    MySQL数据库开发 基础概念 1.数据:描述事物特征的符号,属性 2.数据库的概念:管理计算机中的数据的仓库 2.
    的头像 发表于 02-13 16:13 2791次阅读

    MySQL数据库:理解MySQL的性能优化、优化查询

    最近一直在为大家更新MySQL相关学习内容,可能有朋友不懂MySQL重要性。在程序,语言,架构更新换代频繁的今天,MySQL 恐怕是大家使
    的头像 发表于 07-02 17:18 3088次阅读
    <b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b>:理解<b class='flag-5'>MySQL</b>的性能优化、优化查询

    华为云数据库-RDS for MySQL数据库

    (for MySQL)为辅。 MySQL数据库是全球最受欢迎的一种数据库,它是属于 Oracle旗下的一款产品,MySQL是一种关系型
    的头像 发表于 10-27 11:06 1513次阅读

    MySQL数据库管理与应用

    MySQL数据库管理与应用 MySQL是一种广泛使用的关系型数据库管理系统,被认为是最流行和最常见的开源数据库之一。它可以被用于多种不同的应
    的头像 发表于 08-28 17:15 966次阅读

    mysql是一个什么类型的数据库

    MySQL是一种关系型数据库管理系统(RDBMS),用于存储和管理大量结构化数据。它被广泛用于各种应用程序和网站的后端,包括电子商务平台、社交媒体网站、金融系统等等。MySQL的特点是
    的头像 发表于 11-16 14:43 1760次阅读

    mysql数据库命令大全

    MySQL是一种关系型数据库管理系统,它拥有丰富的命令来管理和操作数据库。以下是一份详尽、详实、细致的MySQL
    的头像 发表于 11-16 16:39 1448次阅读

    MySQL数据库基础知识

    MySQL 是一种开源的关系型数据库管理系统,它是目前最流行的数据库之一。MySQL 提供了一种结构化的方法来管理大量的数据,并且具有高效、
    的头像 发表于 11-21 11:09 969次阅读

    mysql数据库备份与还原

    MySQL是一种常见的关系型数据库管理系统,用于存储和管理数据。备份和还原数据库是非常重要的操作,可以保护
    的头像 发表于 11-23 14:32 1178次阅读

    mysql数据库基础命令

    MySQL是一个流行的关系型数据库管理系统,经常用于存储、管理和操作数据。在本文中,我们将详细介绍MySQL的基础命令,并提供与每个
    的头像 发表于 12-06 10:56 576次阅读

    数据库数据恢复—未开启binlog的Mysql数据库数据恢复案例

    mysql数据库故障: 工作人员使用Delete命令删除数据时未添加where子句进行筛选,导致全表数据被删除,删除后未对该表进
    的头像 发表于 12-08 14:18 1129次阅读
    <b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复—未开启binlog的<b class='flag-5'>Mysql</b><b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复案例

    数据库数据恢复—Mysql数据库表记录丢失的数据恢复流程

    Mysql数据库故障: Mysql数据库表记录丢失。 Mysql数据库故障表现: 1、
    的头像 发表于 12-16 11:05 88次阅读
    <b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复—<b class='flag-5'>Mysql</b><b class='flag-5'>数据库</b>表记录丢失的<b class='flag-5'>数据</b>恢复流程