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

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

✒️由于学习 MySQL 管理可以让你了解如何创建、管理和优化数据库,以及如何进行数据的存储、检索和更新等操作。所以这一篇我们要讲的是【MySQL管理与连接】

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

1️⃣MySQL管理⭐启动和关闭 MySQL 服务器:⭐管理MySQL的命令⭐MySQL用户设置

2️⃣MySQL连接3️⃣总结

1️⃣MySQL管理

⭐启动和关闭 MySQL 服务器:

Windows 系统下:

启动 MySQL 服务器: ✔️

打开命令提示符(cmd)。输入以下命令,将会切换到 MySQL 安装目录的 bin 目录:cd C:\mysql\bin

如果你的 MySQL 安装目录不同,请相应地修改命令中的路径。输入以下命令启动 MySQL 服务器:mysqld --console

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

关闭 MySQL 服务器: ✔️

打开命令提示符(cmd)。输入以下命令,将会切换到 MySQL 安装目录的 bin 目录:cd C:\mysql\bin

如果你的 MySQL 安装目录不同,请相应地修改命令中的路径。输入以下命令关闭 MySQL 服务器:mysqladmin -uroot shutdown

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

Linux 系统下:

启动 MySQL 服务器: ✔️

打开终端。输入以下命令,将会切换到 MySQL 安装目录的 bin 目录:cd /usr/bin

如果你的 MySQL 安装目录不同,请相应地修改命令中的路径。输入以下命令启动 MySQL 服务器:./mysqld_safe &

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

关闭 MySQL 服务器: ✔️

打开终端。输入以下命令,将会切换到 MySQL 安装目录的 bin 目录:cd /usr/bin

如果你的 MySQL 安装目录不同,请相应地修改命令中的路径。输入以下命令关闭 MySQL 服务器:./mysqladmin -u root -p shutdown

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

⭐管理MySQL的命令

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

连接到 MySQL 数据库: ⚓ mysql -u username -p

这将连接到 MySQL 数据库,并要求输入密码。 显示数据库列表: ⚓ show databases;

创建数据库: ⚓create database database_name;

选择要使用的数据库: ⚓use database_name;

显示当前数据库中的表: ⚓show tables;

创建表: ⚓create table table_name (

column1 datatype,

column2 datatype,

...

);

插入数据: ⚓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 值,无需手动指定。

查询数据: ⚓select * from table_name;

更新数据: ⚓ update table_name

set column1 = value1, column2 = value2, ...

where condition;

删除数据: ⚓ 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” 表中的所有数据,但不会删除表结构。

删除表: ⚓drop table table_name;

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

删除数据库: ⚓ drop database database_name;

查询特定列: ⚓ select column1, column2 from table_name;

排序查询结果: ⚓ select * from table_name order by column_name;

连接多个表: ⚓ select * from table1

join table2 on table1.column = table2.column;

创建索引: ⚓ create index index_name on table_name (column1, column2, ...);

备份数据库: ⚓ mysqldump -u username -p database_name > backup.sql

恢复数据库: ⚓ mysql -u username -p database_name < backup.sql

查看当前 MySQL 版本: ⚓ select version();

退出 MySQL: ⚓exit;

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

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

⭐MySQL用户设置

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

创建用户:▶️CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';

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

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

授予用户权限:▶️GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost';

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

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

撤销用户权限:▶️REVOKE ALL PRIVILEGES ON database_name.* FROM 'username'@'localhost';

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

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

刷新权限:▶️FLUSH PRIVILEGES;

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

删除用户:▶️DROP USER 'username'@'localhost';

这将删除指定的用户。

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

⚡请注意,在上述命令中,需要将 username 替换为你要创建或删除的用户名,localhost 表示允许用户从本地连接到 MySQL 数据库。你还可以用其他主机名或 IP 地址代替 localhost⚡

✈️此外,你可以为用户指定更细粒度的权限,例如控制用户对特定表或列的访问权限、创建存储过程和触发器的权限等。 ✈️

具体的命令和语法可以参考 MySQL 官方文档和手册。 地址链接: MySQL官方文档和手册✈️

2️⃣MySQL连接

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

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

具体步骤如下:

配置数据库连接参数: ❄️ 在 PHP 脚本中,你需要指定一些配置参数,包括数据库服务器地址、用户名、密码和数据库名称。可以将这些参数存储在变量中,方便后续使用。 创建数据库连接对象: ❄️ 使用 mysqli 或 PDO 扩展提供的函数来创建数据库连接。示例如下: // 使用 mysqli 扩展

$conn = new mysqli($servername, $username, $password, $dbname);

// 使用 PDO 扩展

$dsn = "mysql:host=$servername;dbname=$dbname";

$conn = new PDO($dsn, $username, $password);

在此步骤中,你可以通过连接对象获取对数据库的句柄,以便后续进行操作。 检查连接是否成功: ❄️ 可以使用以下代码来检查连接是否成功: // 使用 mysqli 扩展

if ($conn->connect_error) {

die("连接失败: " . $conn->connect_error);

}

// 使用 PDO 扩展

if (!$conn) {

die("连接失败");

}

如果连接失败,你可以选择在这里输出错误消息并终止脚本执行。 执行查询语句: ❄️ 使用 query() 方法执行 SQL 查询语句。示例如下: $sql = "SELECT * FROM your_table";

$result = $conn->query($sql);

这将执行查询并返回结果集。 处理查询结果: ❄️ 通过遍历结果集并提取数据,你可以对查询结果进行处理。示例如下: if ($result->num_rows > 0) {

while($row = $result->fetch_assoc()) {

// 处理每行数据

}

}

在循环中,你可以使用 $row 变量访问每个字段的值,并对其进行处理。 关闭数据库连接: ❄️ 在完成所有数据库操作后,使用以下代码来关闭数据库连接: // 使用 mysqli 扩展

$conn->close();

// 使用 PDO 扩展

$conn = null;

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

‼️mysql二进制方式连接

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

打开终端或命令行界面: 打开终端(对于 macOS 和 Linux)或命令提示符(对于 Windows),以便在命令行界面中执行连接命令。 输入连接命令: 在命令行界面中,输入以下命令来建立二进制连接: mysql --user=your_username --password=your_password --host=your_host --port=your_port

将上述命令中的 your_username、your_password、your_host 和 your_port 替换为你实际的连接参数。 例如,如果要连接本地 MySQL 服务器,默认端口为 3306,用户名为 root,密码为 password,可以使用以下命令: mysql --user=root --password=password --host=localhost --port=3306

输入密码: 执行连接命令后,系统会提示你输入密码。输入正确的密码,然后按下回车键。 连接成功: 如果连接参数正确,并且 MySQL 服务器正在运行并接受连接,你将成功建立一个与数据库的二进制连接。此时,你将看到一个提示符,表示你已连接到 MySQL 服务器。 执行 SQL 查询: 在连接成功后,你可以在命令行界面中执行 SQL 查询语句。例如,你可以执行以下查询语句来显示所有数据库: SHOW DATABASES;

通过执行其他 SQL 查询和操作,你可以对数据库进行读取、写入和更新等操作。 退出连接: 当完成数据库操作后,你可以使用以下命令退出二进制连接: EXIT;

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

3️⃣总结

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

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

我是秋说,我们下次见。

查看原文