【MySQL进阶之路丨第三篇】MySQL管理与连接

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 【MySQL进阶之路丨第三篇】MySQL管理与连接

image.png

在上一篇中我们介绍了 MySQL数据库的安装与配置,这一篇我们开始正式学习MySQL

上一篇链接:【MySQL进阶之路丨第二篇】数据库的安装与配置

如何创建、管理和优化数据库,以及如何进行数据的存储、检索和更新等操作是十分重要的。这一篇我们要讲的是【MySQL管理与连接】

1️⃣MySQL管理

启动和关闭 MySQL 服务器:

Windows 系统下:

启动 MySQL 服务器:

1.打开命令提示符(cmd)。

2.输入以下命令,将会切换到 MySQL 安装目录的 bin 目录:

cd C:\mysql\bin

如果你的 MySQL 安装目录不同,请相应地修改命令中的路径。

3.输入以下命令启动 MySQL 服务器:

mysqld --console

这将以控制台方式启动 MySQL 服务器,并在命令提示符窗口显示服务器的输出信息。

关闭 MySQL 服务器:

1.打开命令提示符(cmd)。

2.输入以下命令,将会切换到 MySQL 安装目录的 bin 目录:

cd C:\mysql\bin

如果你的 MySQL 安装目录不同,请相应地修改命令中的路径。

3.输入以下命令关闭 MySQL 服务器:

mysqladmin -uroot shutdown

如果你使用了不同的用户名和密码,请将命令中的 “root” 替换为正确的用户名。系统会提示你输入密码,输入正确的密码后按回车即可关闭 MySQL 服务器。

Linux 系统下:

启动 MySQL 服务器:

1.打开终端。

2.输入以下命令,将会切换到 MySQL 安装目录的 bin 目录:

cd /usr/bin

如果你的 MySQL 安装目录不同,请相应地修改命令中的路径。

3.输入以下命令启动 MySQL 服务器:

./mysqld_safe &

这将以后台方式启动 MySQL 服务器。

关闭 MySQL 服务器:

1.打开终端。

2.输入以下命令,将会切换到 MySQL 安装目录的 bin 目录:

cd /usr/bin

如果你的 MySQL 安装目录不同,请相应地修改命令中的路径。

3.输入以下命令关闭 MySQL 服务器:

./mysqladmin -u root -p shutdown

然后,系统会要求你输入 root 用户的密码,输入正确的密码后按回车即可关闭 MySQL 服务器。


管理MySQL的命令

在使用 MySQL 数据库时,有一些常用的命令可以帮助你执行各种操作。以下是一些常见的 MySQL 命令:

1.连接到 MySQL 数据库:

mysql -u username -p

这将连接到 MySQL 数据库,并要求输入密码。

2 显示数据库列表:

show databases;

3.创建数据库:

create database database_name;

4.选择要使用的数据库:

use database_name;

5.显示当前数据库中的表:

show tables;

6.创建表:

create table table_name (
  column1 datatype,
  column2 datatype,
  ...
);

7.插入数据:

insert into table_name (column1, column2, ...)
values (value1, value2, ...);

以下是向 “users” 表中插入一条数据的示例:

INSERT INTO users (name, email)
VALUES ('John Doe', 'johndoe@example.com');

在上述示例中,我们使用了 INSERT INTO 语句来指定表名和要插入的列。然后,使用 VALUES 关键字指定要插入的实际值。在这个例子中,我们插入了一个名为 “John Doe” 的用户,电子邮件地址为 “johndoe@example.com”。

如果你想插入多行数据,可以使用类似的语法,并在 VALUES 子句中指定多个值集合。例如:

INSERT INTO users (name, email)
VALUES ('John Doe', 'johndoe@example.com'),
       ('Jane Smith', 'janesmith@example.com'),
       ('Bob Johnson', 'bobjohnson@example.com');

上述示例会将三个用户的信息插入到 “users” 表中。

需要注意的是,如果表中定义了其他列,但你没有在 INSERT INTO 语句中指定对应的值,那么这些列将采用默认值(如果有)或者为空值(如果允许)。另外,如果你的表中定义了自增的主键列,将自动生成唯一的 ID 值,无需手动指定。

8.查询数据:

select * from table_name;

9.更新数据:

update table_name set column1 = value1, column2 = value2, ... where condition;

10.删除数据:

delete from table_name where condition;

示例如下:

DELETE FROM users
WHERE name = 'John Doe' AND email = 'johndoe@example.com';

在上述示例中,我们使用了 DELETE FROM 语句来指定要删除数据的表名。然后,使用 WHERE 子句来指定删除数据的条件。在这个例子中,我们删除了姓名为 “John Doe”、电子邮件地址为 “johndoe@example.com” 的用户数据。

如果你想删除表中的所有数据,可以只使用 DELETE FROM 语句而不带 WHERE 子句。例如:

DELETE FROM users;

上述示例将删除 “users” 表中的所有数据,但不会删除表结构。

11.删除表:

drop table table_name;

如下图,我们删除了users表:

12.删除数据库:

drop database database_name;

13.查询特定列:

select column1, column2 from table_name;

14.排序查询结果:

select * from table_name order by column_name;

15.连接多个表:

select * from table1 join table2 on table1.column = table2.column;

16.创建索引:

create index index_name on table_name (column1, column2, ...);

17.备份数据库:

mysqldump -u username -p database_name > backup.sql

18.恢复数据库:

mysql -u username -p database_name < backup.sql

19.查看当前 MySQL 版本:

select version();

20.退出 MySQL:

exit;

请注意,在上述命令中, 部分命令需要根据具体实际进行操作

需要将 username 替换为你的 MySQL 用户名,database_name 替换为你的数据库名称,table_name 替换为你的表名称,column1, column2 替换为你的列名称,value1, value2 替换为你要插入的值,condition 是用于指定更新或删除操作的条件。


MySQL用户设置

在 MySQL 中,用户的设置涉及到创建用户、授予用户权限以及管理用户的过程。以下是一些关于 MySQL 用户设置的常用命令:

1.创建用户:

CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';

这将创建一个名为 username 的用户,并设置对应的密码。

如图,我们创建了一个名为qiu且密码为qiu的用户

2.授予用户权限:

GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost';

这将授予用户对指定数据库中所有表的全部权限。你也可以使用 GRANT 命令来授予特定的权限,例如 SELECTINSERTUPDATEDELETE 等。

如图,我们授予qiu用户在所有表的全部权限

3.撤销用户权限:

REVOKE ALL PRIVILEGES ON database_name.* FROM 'username'@'localhost';

这将撤销用户对指定数据库中所有表的全部权限。同样,你可以使用 REVOKE 命令来撤销特定的权限。

如图,我们撤销qiu用户在所有表的全部权限

4.刷新权限:

FLUSH PRIVILEGES;

这个命令用于刷新权限并使其立即生效。

5.删除用户:

DROP USER 'username'@'localhost';

这将删除指定的用户。

如图,我们删除了指定用户qiu

具体的命令和语法可以参考 MySQL 官方文档和手册。

地址链接:MySQL官方文档和手册


2️⃣MySQL连接

MySQL连接的连接方式主要有两种,PHP 脚本连接 MySQLmysql二进制方式连接。

PHP 脚本连接 MySQL

PHP 提供内置函数和扩展来实现MySQL数据库的连接

具体步骤如下:

1.配置数据库连接参数:

在 PHP 脚本中,你需要指定一些配置参数,包括数据库服务器地址、用户名、密码和数据库名称。可以将这些参数存储在变量中,方便后续使用。

2.创建数据库连接对象:

使用 mysqli 或 PDO 扩展提供的函数来创建数据库连接。示例如下:

// 使用 mysqli 扩展
$conn = new mysqli($servername, $username, $password, $dbname);
// 使用 PDO 扩展
$dsn = "mysql:host=$servername;dbname=$dbname";
$conn = new PDO($dsn, $username, $password);

在此步骤中,你可以通过连接对象获取对数据库的句柄,以便后续进行操作。

3.检查连接是否成功:

可以使用以下代码来检查连接是否成功:

// 使用 mysqli 扩展
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
// 使用 PDO 扩展
if (!$conn) {
    die("连接失败");
}

如果连接失败,你可以选择在这里输出错误消息并终止脚本执行。

4.执行查询语句:

使用 query() 方法执行 SQL 查询语句。示例如下:

$sql = "SELECT * FROM your_table";
$result = $conn->query($sql);

这将执行查询并返回结果集。

5.处理查询结果:

通过遍历结果集并提取数据,你可以对查询结果进行处理。示例如下:

if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        // 处理每行数据
    }
}

在循环中,你可以使用 $row 变量访问每个字段的值,并对其进行处理。

6.关闭数据库连接:

在完成所有数据库操作后,使用以下代码来关闭数据库连接:

// 使用 mysqli 扩展
$conn->close();
// 使用 PDO 扩展
$conn = null;

这将释放服务器资源并终止与数据库的连接。

mysql二进制方式连接

当使用二进制方式连接 MySQL 数据库时,可以按照以下步骤进行操作:

1.打开终端或命令行界面:

打开终端(对于 macOS 和 Linux)或命令提示符(对于 Windows),以便在命令行界面中执行连接命令。

2.输入连接命令:

在命令行界面中,输入以下命令来建立二进制连接:

mysql --user=your_username --password=your_password --host=your_host --port=your_port

将上述命令中的 your_usernameyour_passwordyour_hostyour_port 替换为你实际的连接参数。

例如,如果要连接本地 MySQL 服务器,默认端口为 3306,用户名为 root,密码为 password,可以使用以下命令:

mysql --user=root --password=password --host=localhost --port=3306

3.输入密码:

执行连接命令后,系统会提示你输入密码。输入正确的密码,然后按下回车键。

4.连接成功:

如果连接参数正确,并且 MySQL 服务器正在运行并接受连接,你将成功建立一个与数据库的二进制连接。此时,你将看到一个提示符,表示你已连接到 MySQL 服务器。

5.执行 SQL 查询:

在连接成功后,你可以在命令行界面中执行 SQL 查询语句。例如,你可以执行以下查询语句来显示所有数据库:

SHOW DATABASES;

通过执行其他 SQL 查询和操作,你可以对数据库进行读取、写入和更新等操作。

6.退出连接:

当完成数据库操作后,你可以使用以下命令退出二进制连接:

EXIT;

或者简单地按下 Ctrl + D(对于 macOS 和 Linux)或 Ctrl + Z(对于 Windows)来退出连接。


3️⃣总结

以上为 【MySQL进阶之路丨第三篇】MySQL管理与连接

后续将分享 【MySQL进阶之路丨第四篇】命令行与可视化工具

我是秋说,我们下次见。

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
29天前
|
关系型数据库 MySQL 网络安全
DBeaver连接MySQL提示Access denied for user ‘‘@‘ip‘ (using password: YES)
“Access denied for user ''@'ip' (using password: YES)”错误通常与MySQL用户权限配置或网络设置有关。通过检查并正确配置用户名和密码、用户权限、MySQL配置文件及防火墙设置,可以有效解决此问题。希望本文能帮助您成功连接MySQL数据库。
45 4
|
1月前
|
安全 关系型数据库 MySQL
【赵渝强老师】MySQL的连接方式
本文介绍了MySQL数据库服务器启动后的三种连接方式:本地连接、远程连接和安全连接。详细步骤包括使用root用户登录、修改密码、创建新用户、授权及配置SSL等。并附有视频讲解,帮助读者更好地理解和操作。
185 1
|
2月前
|
SQL Java 关系型数据库
java连接mysql查询数据(基础版,无框架)
【10月更文挑战第12天】该示例展示了如何使用Java通过JDBC连接MySQL数据库并查询数据。首先在项目中引入`mysql-connector-java`依赖,然后通过`JdbcUtil`类中的`main`方法实现数据库连接、执行SQL查询及结果处理,最后关闭相关资源。
202 6
|
2月前
|
SQL JavaScript 关系型数据库
node博客小项目:接口开发、连接mysql数据库
【10月更文挑战第14天】node博客小项目:接口开发、连接mysql数据库
|
2月前
|
Java 关系型数据库 MySQL
【编程基础知识】Eclipse连接MySQL 8.0时的JDK版本和驱动问题全解析
本文详细解析了在使用Eclipse连接MySQL 8.0时常见的JDK版本不兼容、驱动类错误和时区设置问题,并提供了清晰的解决方案。通过正确配置JDK版本、选择合适的驱动类和设置时区,确保Java应用能够顺利连接MySQL 8.0。
272 1
|
2月前
|
Java 关系型数据库 MySQL
springboot学习五:springboot整合Mybatis 连接 mysql数据库
这篇文章是关于如何使用Spring Boot整合MyBatis来连接MySQL数据库,并进行基本的增删改查操作的教程。
285 0
springboot学习五:springboot整合Mybatis 连接 mysql数据库
|
3月前
|
SQL 关系型数据库 MySQL
MySQL C连接与使用
【9月更文挑战第21天】在 MySQL 中,可以通过 C 语言连接和操作数据库。首先需安装 MySQL 服务器及 C 开发库,然后在程序中包含必要头文件,初始化连接对象,并使用实际参数建立连接。执行 SQL 语句时,需替换表名等变量,获取并遍历结果集。最后,释放资源并关闭连接。过程中应注意错误处理、内存管理和安全性,以及性能优化。此方式适用于高效数据存储和检索的应用程序。
|
2月前
|
SQL JavaScript 关系型数据库
Node.js 连接 MySQL
10月更文挑战第9天
38 0
|
3月前
|
SQL JavaScript 关系型数据库
Node服务连接Mysql数据库
本文介绍了如何在Node服务中连接MySQL数据库,并实现心跳包连接机制。
50 0
Node服务连接Mysql数据库
|
2月前
|
关系型数据库 MySQL Linux
Navicat 连接 Windows、Linux系统下的MySQL 各种错误,修改密码。
使用Navicat连接Windows和Linux系统下的MySQL时可能遇到的四种错误及其解决方法,包括错误代码2003、1045和2013,以及如何修改MySQL密码。
310 0