MySQL命令窗口是MySQL数据库管理系统提供的一种基于文本的交互式操作界面,用户通过输入SQL命令来直接管理数据库、表结构及数据,相较于图形化工具(如MySQL Workbench、Navicat),命令窗口更轻量、高效,尤其适合服务器管理、自动化脚本编写等场景,本文将详细介绍如何打开MySQL命令窗口、基本操作流程及常用命令,帮助新手快速上手。
如何打开MySQL命令窗口
MySQL命令窗口的打开方式因操作系统不同而略有差异,以下是Windows、macOS和Linux三大主流系统的具体步骤:
(一)Windows系统
-
确保MySQL服务已启动
首先需要确认MySQL服务正在运行,按下Win+R
键,输入services.msc
并回车,在服务列表中找到MySQL
(或自定义的服务名),右键选择“启动”,若未找到服务,需先确保MySQL已正确安装并添加到系统服务中。 -
打开命令提示符或PowerShell
在开始菜单中搜索“cmd”或“PowerShell”,右键以管理员身份运行(非必须,但建议)。 -
连接MySQL服务器
在命令行窗口中输入以下命令并回车:mysql -u 用户名 -p
用户名
是MySQL的登录用户(如root
,即超级管理员),-p
表示需要输入密码,回车后,系统会提示输入密码(输入时不会显示星号,直接输入后回车即可)。 -
成功进入命令窗口
若密码正确,将显示欢迎信息及命令提示符mysql>
,表示已成功连接到MySQL服务器,可输入SQL命令进行操作。
(二)macOS系统
-
确保MySQL已安装并启动
若通过Homebrew安装MySQL,可执行以下命令启动服务:brew services start mysql
若未安装,先通过Homebrew安装:
brew install mysql
。 -
连接MySQL服务器
输入以下命令(与Windows类似):mysql -u root -p
回车后输入密码,成功后显示
mysql>
提示符。
(三)Linux系统(以Ubuntu为例)
-
确保MySQL已安装并启动
若未安装,先更新包列表并安装MySQL服务器:sudo apt update sudo apt install mysql-server
安装后启动服务:
sudo systemctl start mysql
-
打开终端
通过快捷键Ctrl+Alt+T
打开终端。 -
连接MySQL服务器
输入连接命令(首次安装可能无密码,直接回车即可进入):mysql -u root -p
MySQL命令窗口基本操作流程
成功进入命令窗口后,需通过SQL命令管理数据库,以下是核心操作步骤及示例:
显示所有数据库
使用SHOW DATABASES;
命令查看当前MySQL服务器中存在的所有数据库:
SHOW DATABASES;
执行后将返回数据库列表,如information_schema
、mysql
、performance_schema
等(系统自带数据库),以及用户自定义数据库。
创建新数据库
使用CREATE DATABASE
命令创建新数据库,建议指定字符集(如utf8mb4
)以支持中文:
CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
选择要操作的数据库
创建或操作数据库前,需通过USE
命令指定当前数据库:
USE mydb;
执行后提示符将变为mysql mydb>
,表示后续命令在此数据库下生效。
创建表
使用CREATE TABLE
命令创建表,需定义列名、数据类型、约束等,例如创建用户表(users
):
CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY COMMENT '用户ID', name VARCHAR(50) NOT NULL COMMENT '用户名', age TINYINT UNSIGNED COMMENT '年龄', email VARCHAR(100) UNIQUE COMMENT '邮箱', created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' );
插入数据
通过INSERT INTO
命令向表中插入数据,需按列顺序或指定列名:
INSERT INTO users (name, age, email) VALUES ('张三', 25, 'zhangsan@example.com');
查询数据
使用SELECT
命令查询数据,表示所有列,WHERE
子句可添加条件:
-- 查询所有数据 SELECT * FROM users; -- 条件查询(年龄大于20的用户) SELECT name, email FROM users WHERE age > 20;
更新数据
通过UPDATE
命令修改数据,必须添加WHERE
条件,否则将更新整列:
UPDATE users SET age = 26 WHERE name = '张三';
删除数据
使用DELETE FROM
命令删除数据,同样需添加WHERE
条件:
DELETE FROM users WHERE age < 18;
删除表或数据库
不再需要表或数据库时,可通过DROP
命令删除(谨慎操作,数据无法恢复):
-- 删除表 DROP TABLE users; -- 删除数据库(需先退出数据库:USE mysql;) DROP DATABASE mydb;
MySQL常用命令速查表
为方便新手查阅,以下整理了MySQL命令窗口中最常用的命令及功能说明:
命令分类 | 命令语法 | 功能说明 | 示例 |
---|---|---|---|
数据库操作 | SHOW DATABASES; |
显示所有数据库 | SHOW DATABASES; |
CREATE DATABASE db_name; |
创建新数据库 | CREATE DATABASE testdb; |
|
USE db_name; |
选择当前数据库 | USE testdb; |
|
DROP DATABASE db_name; |
删除数据库 | DROP DATABASE testdb; |
|
表操作 | SHOW TABLES; |
显示当前数据库所有表 | SHOW TABLES; |
CREATE TABLE table_name (...); |
创建新表 | CREATE TABLE students (id INT, name VARCHAR(20)); |
|
DESCRIBE table_name; |
查看表结构 | DESCRIBE students; |
|
DROP TABLE table_name; |
删除表 | DROP TABLE students; |
|
数据操作 | INSERT INTO table_name VALUES (...); |
插入数据 | INSERT INTO students VALUES (1, '李四'); |
SELECT * FROM table_name; |
查询所有数据 | SELECT * FROM students; |
|
SELECT col1, col2 FROM table_name WHERE condition; |
条件查询 | SELECT name FROM students WHERE id = 1; |
|
UPDATE table_name SET col=val WHERE condition; |
更新数据 | UPDATE students SET name='王五' WHERE id=1; |
|
DELETE FROM table_name WHERE condition; |
删除数据 | DELETE FROM students WHERE id=2; |
|
用户与权限 | CREATE USER 'user'@'host' IDENTIFIED BY 'pass'; |
创建用户 | CREATE USER 'test'@'localhost' IDENTIFIED BY '123456'; |
GRANT ALL ON db_name.* TO 'user'@'host'; |
授权用户 | GRANT ALL ON testdb.* TO 'test'@'localhost'; |
|
EXIT; 或 QUIT; |
退出MySQL命令窗口 | EXIT; |
注意事项
- 命令结束符:所有SQL命令必须以分号结尾,否则MySQL会认为命令未完成,等待输入下一行(提示符变为
->
)。 - 大小写规范:MySQL关键字(如
SELECT
、CREATE
、FROM
)不区分大小写,但表名、列名在Linux/macOS下默认区分大小写(Windows不区分),建议关键字大写、表名列名小写,提高可读性。 - 注释方式:单行注释用(后需加空格),多行注释用,
-- 这是单行注释 SELECT * FROM users; /* 这是多行注释,可跨行 */
- 服务启动:连接前务必确保MySQL服务已启动,否则会提示“Can’t connect to MySQL server”。
- 密码安全:避免在命令行中直接输入密码(如
mysql -u root -p123456
),使用-p
后手动输入密码,防止密码泄露。
相关问答FAQs
问题1:MySQL命令窗口提示“Access denied for user ‘root’@’localhost’”怎么办?
解答:通常由密码错误或权限不足导致,解决步骤:① 确认密码是否正确(注意大小写和特殊字符);② 若忘记密码,可通过“跳过权限表”修改密码:Windows下停止MySQL服务,用mysqld --skip-grant-tables
启动,无密码登录后执行UPDATE mysql.user SET authentication_string=PASSWORD('新密码') WHERE User='root'
,最后FLUSH PRIVILEGES;
;Linux/macOS类似操作;③ 检查用户主机权限(如root
是否允许从localhost
连接)。
问题2:在命令窗口中如何查看MySQL版本和当前时间?
解答:查看MySQL版本:输入SELECT VERSION();
,执行后返回版本号(如0.26
);查看当前时间:输入SELECT NOW();
,返回服务器日期和时间(如2023-10-01 12:30:45
),这两个命令常用于调试或确认环境信息。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/17243.html