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

    文章

    10991

    浏览量

    206735
  • 数据库
    +关注

    关注

    7

    文章

    3591

    浏览量

    63370
  • 开源
    +关注

    关注

    3

    文章

    2985

    浏览量

    41718
  • 命令
    +关注

    关注

    5

    文章

    638

    浏览量

    21849
  • MySQL
    +关注

    关注

    1

    文章

    775

    浏览量

    26004
收藏 人收藏

    评论

    相关推荐

    labview有调用mysql数据库问题????

    labview有调用mysql数据库,请问labview打包成exe安装档,怎么把mysql数据库打包进来,是mysql
    发表于 05-19 16:17

    labview生成exe文件后这么连接mysql数据库

    本帖最后由 天使之涯 于 2015-7-23 16:36 编辑 我用labview编程,在没有生成exe文件是能连接上本地的mysql数据库和服务器的数据库,那如果生成exe文件后,拷贝到其他电脑时,
    发表于 07-23 13:54

    labview无法将中文写入mysql数据库

    这个问题刚刚出现,我没有很深入地去调查,可能是一个小问题而已。labview向Mysql数据库中写入数据时,英文、数字没问题,但是没有中文。也没有出现乱码,就是完全消失了。所以这也可能是
    发表于 12-17 00:02

    mysql数据库设计步骤

    mysql数据库设计和优化
    发表于 05-13 11:00

    mysql数据库发展流程概述

    mysql数据库基础知识
    发表于 07-15 11:26

    mysql数据库跑在docker

    在docker中使用MySQL数据库
    发表于 08-15 14:26

    MySQL数据库使用

    关于MySQL数据库的简单操作
    发表于 10-24 14:32

    labview插入数据MySQL数据库

    最近在用labview写入数据MySQL数据库,遇到一个问题:(如图片所示)利用insert指令插入数据,为什么每次插入单个值都会新起一行,而不会自动插入在连续的非空下一行呢?刚刚接
    发表于 12-26 16:52

    mySQL数据库介绍

    mySQL数据库01
    发表于 06-04 14:36

    Mysql数据库的基本操作

    Mysql数据库入门-基本操作
    发表于 06-08 17:18

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

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

    源头开始呈现labview连接MYSQL数据库过程样本

    装的都是32位的,所有MYSQL安装结束后,需要在mysql网站上下载并安装 mysql CONNETER/ODBC 32位 版本的数据库
    发表于 09-25 16:25

    ESP8266如何连接mysql数据库

    各位大神,我试图用ESP8266 连接mysql ,将温湿度传感器的数据,写入数据库mysql数据库已建好,在局域网中的其他电脑也可以正常
    发表于 01-12 09:22

    mysql数据库命令大全

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

    mysql数据库基础命令

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