一文教会你如何在PHPStudy中玩转MySQL命令行
<div id="navCategory"><h5 class="catalogue">目录</h5><ul class="first_class_ul"><li><a href="#_label0">引言</a></li><li><a href="#_label1">1. PHPStudy简介</a></li><ul class="second_class_ul"><li><a href="#_lab2_1_0">理解数据库,表,字段的模型</a></li></ul><li><a href="#_label2">2. 打开MySQL命令行</a></li><ul class="second_class_ul"><li><a href="#_lab2_2_1">2.1 启动PHPStudy</a></li><li><a href="#_lab2_2_2">2.2 启动MySQL服务</a></li><li><a href="#_lab2_2_3">2.3 打开命令行</a></li><li><a href="#_lab2_2_4">2.4 登录MySQL</a></li></ul><li><a href="#_label3">3. MySQL基本命令</a></li><ul class="second_class_ul"><li><a href="#_lab2_3_5">3.1 查看(进去)数据库</a></li><li><a href="#_lab2_3_6">3.2 创建数据库</a></li><li><a href="#_lab2_3_7">3.3 使用数据库</a></li><li><a href="#_lab2_3_8">3.4 创建数据表</a></li><li><a href="#_lab2_3_9">3.5 插入数据</a></li><li><a href="#_lab2_3_10">3.6 查询数据(查表)</a></li><li><a href="#_lab2_3_11">3.7 更新数据</a></li><li><a href="#_lab2_3_12">3.8 删除数据</a></li><li><a href="#_lab2_3_13">3.9 删除表和数据库</a></li></ul><li><a href="#_label4">4. 常用技巧</a></li><ul class="second_class_ul"><li><a href="#_lab2_4_14">4.1 退出MySQL</a></li><li><a href="#_lab2_4_15">4.2 使用帮助</a></li><li><a href="#_lab2_4_16">4.3 查看表结构</a></li><li><a href="#_lab2_4_17">4.4 导入和导出数据库</a></li></ul><li><a href="#_label5">结论</a></li><ul class="second_class_ul"></ul></ul></div><p class="maodian"><a name="_label0"></a></p><h2>引言</h2><p>在现代Web开发中,数据库是不可或缺的一部分。MySQL是最流行的数据库管理系统之一,广泛应用于各种类型的应用程序。虽然许多开发者习惯使用图形化工具(如phpMyAdmin)来管理数据库,但使用MySQL命令行工具可以提供更多的灵活性和控制力。本文将详细介绍如何在PHPStudy中打开MySQL命令行,并进行基本的数据库操作。</p>
<p class="maodian"><a name="_label1"></a></p><h2>1. PHPStudy简介</h2>
<p>PHPStudy是一款集成了PHP环境的开发工具,适合初学者和小型项目的快速开发。它内置了Apache、Nginx、MySQL等常用组件,使得Web开发变得简单快捷。通过PHPStudy,开发者可以轻松地搭建本地开发环境。</p>
<p class="maodian"><a name="_lab2_1_0"></a></p><h3>理解数据库,表,字段的模型</h3>
<p>拿pikachu靶场举例:</p>
<div class="jb51code"><pre class="brush:ps;">查表如下:
mysql> SELECT * FROM users;
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id: 49
Current database: pikachu
+----+----------+----------------------------------+-------+
| id | username | password | level |
+----+----------+----------------------------------+-------+
|1 | admin | e10adc3949ba59abbe56e057f20f883e | 1 |
|2 | pikachu| 670b14728ad9902aecba32e22fa4f6bd | 2 |
|3 | test | e99a18c428cb38d5f260853678922e03 | 3 |
+----+----------+----------------------------------+-------+
可以看到这是查的pikachu靶场中的users这个表,其中有id,username,password,level字段
数据库:pikachu
表:users
字段:id, username, password, level
这些概念是理解和使用数据库的基础
</pre></div>
<p class="maodian"><a name="_label2"></a></p><h2>2. 打开MySQL命令行</h2>
<p class="maodian"><a name="_lab2_2_1"></a></p><h3>2.1 启动PHPStudy</h3>
<p>首先,确保你已经安装了PHPStudy。启动PHPStudy后,你会看到一个主界面,其中列出了所有已安装的服务。</p>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202512/2025120811304392.png" /></p>
<p class="maodian"><a name="_lab2_2_2"></a></p><h3>2.2 启动MySQL服务</h3>
<p>在PHPStudy的主界面中,点击“服务”选项卡,确保MySQL服务已启动。如果没有启动,点击“启动”按钮。</p>
<p class="maodian"><a name="_lab2_2_3"></a></p><h3>2.3 打开命令行</h3>
<ol><li><p>打开mysql的文件夹<br />-</p>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202512/2025120811304311.png" /></p></li><li><p>点进去bin文件夹<strong>之后</strong>,输入cmd</p>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202512/2025120811304366.png" /></p></li></ol>
<p class="maodian"><a name="_lab2_2_4"></a></p><h3>2.4 登录MySQL</h3>
<p>在命令行中输入以下命令以登录MySQL:</p>
<div class="jb51code"><pre class="brush:ps;">mysql -u 数据库用户 -p
回车,会提示输出密码
输入密码即可
</pre></div>
<p>数据库的用户和密码可在此处查</p>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202512/2025120811304351.png" /></p>
<p class="maodian"><a name="_label3"></a></p><h2>3. MySQL基本命令</h2>
<p class="maodian"><a name="_lab2_3_5"></a></p><h3>3.1 查看(进去)数据库</h3>
<p>登录成功后,你可以使用以下命令查看当前的数据库:</p>
<div class="jb51code"><pre class="brush:sql;">SHOW DATABASES;
结果:
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| pikachu |
| sys |
+--------------------+
5 rows in set (0.00 sec)
</pre></div>
<p>该命令将列出所有可用的数据库。</p>
<p class="maodian"><a name="_lab2_3_6"></a></p><h3>3.2 创建数据库</h3>
<p>要创建一个新的数据库,可以使用以下命令:</p>
<div class="jb51code"><pre class="brush:sql;">CREATE DATABASE my_database;
返回结果
mysql> CREATE DATABASE my_database;
Query OK, 1 row affected (0.00 sec)
</pre></div>
<p>将<code>my_database</code>替换为你希望创建的数据库名称。</p>
<p class="maodian"><a name="_lab2_3_7"></a></p><h3>3.3 使用数据库</h3>
<p>创建数据库后,你需要选择使用它:</p>
<div class="jb51code"><pre class="brush:sql;">USE my_database;
结果:
mysql> USE my_database;
Database changed
就是创建my_database数据库
</pre></div>
<p class="maodian"><a name="_lab2_3_8"></a></p><h3>3.4 创建数据表</h3>
<p>在数据库中创建表的基本语法如下:</p>
<div class="jb51code"><pre class="brush:sql;">CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
email VARCHAR(100)
);
结果:
mysql> USE my_database;
Database changed
mysql> CREATE TABLE users (
-> id INT AUTO_INCREMENT PRIMARY KEY,
-> name VARCHAR(100),
-> email VARCHAR(100)
-> );
Query OK, 0 rows affected (0.01 sec)
就是创建users表,其字段为name,email
</pre></div>
<p>这将在<code>my_database</code>数据库中创建一个名为<code>users</code>的表。</p>
<p class="maodian"><a name="_lab2_3_9"></a></p><h3>3.5 插入数据</h3>
<p>向表中插入数据的命令如下:</p>
<div class="jb51code"><pre class="brush:sql;">INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com');
结果:
mysql> INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com');
Query OK, 1 row affected (0.00 sec)
就是在name,email字段中分别插入'John Doe', 'john@example.com'数据
</pre></div>
<p class="maodian"><a name="_lab2_3_10"></a></p><h3>3.6 查询数据(查表)</h3>
<p>查询表中的数据可以使用以下命令:</p>
<div class="jb51code"><pre class="brush:sql;">SELECT * FROM users;
结果:
mysql> SELECT * FROM users;
+----+----------+------------------+
| id | name | email |
+----+----------+------------------+
|1 | John Doe | john@example.com |
+----+----------+------------------+
1 row in set (0.00 sec)
这是users表的结构
记得要先进去数据库,即USE pikachu;否则会报错
</pre></div>
<p class="maodian"><a name="_lab2_3_11"></a></p><h3>3.7 更新数据</h3>
<p>要更新表中的数据,可以使用:</p>
<div class="jb51code"><pre class="brush:sql;">UPDATE users SET email = 'john.doe@example.com' WHERE name = 'John Doe';
结果:
mysql> UPDATE users SET email = 'john.doe@example.com' WHERE name = 'John Doe';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1Changed: 1Warnings: 0
就是更新users表,将name字段中含有'John Doe'的那一行中的email 字段被更新为 'john.doe@example.com',
</pre></div>
<p class="maodian"><a name="_lab2_3_12"></a></p><h3>3.8 删除数据</h3>
<p>要删除表中的数据,可以使用:</p>
<div class="jb51code"><pre class="brush:sql;">DELETE FROM users WHERE name = 'John Doe';
结果:
mysql> DELETE FROM users WHERE name = 'John Doe';
Query OK, 1 row affected (0.00 sec)
就是删除users表
记得要先进去数据库,即USE pikachu;否则会报错
</pre></div>
<p class="maodian"><a name="_lab2_3_13"></a></p><h3>3.9 删除表和数据库</h3>
<p>如果需要删除表或数据库,可以使用以下命令:</p>
<div class="jb51code"><pre class="brush:sql;">DROP TABLE users;//删除users表
DROP DATABASE my_database;//删除my_database数据库
结果:
mysql> DROP TABLE users;
Query OK, 0 rows affected (0.00 sec)
mysql> DROP DATABASE my_database;
Query OK, 0 rows affected (0.00 sec)
记得要先进去数据库,即USE pikachu;否则会报错
</pre></div>
<p class="maodian"><a name="_label4"></a></p><h2>4. 常用技巧</h2>
<p class="maodian"><a name="_lab2_4_14"></a></p><h3>4.1 退出MySQL</h3>
<p>在命令行中输入<code>exit</code>或<code>quit</code>可以退出MySQL命令行。</p>
<p class="maodian"><a name="_lab2_4_15"></a></p><h3>4.2 使用帮助</h3>
<p>MySQL提供了帮助命令,可以使用:</p>
<div class="jb51code"><pre class="brush:sql;">HELP;
</pre></div>
<p>或查看特定命令的帮助,例如:</p>
<div class="jb51code"><pre class="brush:sql;">HELP SHOW;
</pre></div>
<p class="maodian"><a name="_lab2_4_16"></a></p><h3>4.3 查看表结构</h3>
<p>要查看表的结构,可以使用:</p>
<div class="jb51code"><pre class="brush:sql;">DESCRIBE users;
结果:
mysql> DESCRIBE users;
+----------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+------------------+------+-----+---------+----------------+
| id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| username | varchar(30) | NO | | NULL | |
| password | varchar(66) | NO | | NULL | |
| level | int(11) | NO | | NULL | |
+----------+------------------+------+-----+---------+----------------+
4 rows in set (0.01 sec)
需要注意的是:
查看表的时候记得要先进去数据库,即USE pikachu;否则会报错,如下:
mysql> DESCRIBE users;
ERROR 1046 (3D000): No database selecte
</pre></div>
<p class="maodian"><a name="_lab2_4_17"></a></p><h3>4.4 导入和导出数据库</h3>
<ul><li><strong>导入</strong>:使用以下命令导入SQL文件:</li></ul>
<div class="jb51code"><pre class="brush:sql;">mysql -u root -p my_database < /path/to/file.sql
</pre></div>
<ul><li><strong>导出</strong>:使用以下命令导出数据库:</li></ul>
<div class="jb51code"><pre class="brush:sql;">mysqldump -u root -p my_database > /path/to/file.sql
</pre></div>
<p class="maodian"><a name="_label5"></a></p><h2>结论</h2>
<p>在PHPStudy中使用MySQL命令行工具可以极大地提高数据库管理的灵活性。通过熟悉基本命令和操作,你将能够更高效地进行数据库开发和管理。尽管图形化工具使用方便,但掌握命令行操作将使你在处理复杂任务时更加得心应手。希望本文能帮助你更好地理解和使用MySQL命令行工具。</p>
頁:
[1]