MySQL 命令行常用操作指南:连接、退出与基础语句

Theo
Theo
发布时间:2026-10-15| 4人浏览过
原创

了解如何正确连接和断开 MySQL 服务是数据库管理的基础。本文整理了从命令行登录、服务控制到常用 SQL 语句(如建库、查表)及权限配置的操作步骤,适合初学者快速查阅。

连接与退出 MySQL 命令行

在终端进入 MySQL 命令行界面,需要指定用户名并触发密码输入提示。

第1步:登录 MySQL 服务

目的是通过终端连接到本地或远程的数据库实例。

操作方法:

mysql -u 用户名 -p回车

执行后系统会提示输入密码,此时直接输入即可(屏幕上不会显示字符)。若用户名后无空格直接跟 -p 也是可行的,如下所示:

mysql -u用户名 -p回车

第2步:安全退出 MySQL

完成操作后,应正确退出命令行以释放资源。

可用指令:

exit;
quit;
\q;

若当前有未完成的查询导致无法正常退出,可尝试强制中断:

Ctrl+c

Linux/Mac 环境下的服务管理

在非 Windows 环境下,通常需要通过命令行启动或停止 MySQL 守护进程。以下是基于 `brew` (Homebrew) 管理的常见操作,适用于 Mac 及部分 Linux 发行版:

  • 启动服务: mysql.server start 或 brew services start mysql
  • 停止服务: mysql.server stop 或 brew services stop mysql

Windows 用户请通过“服务管理器”或安装目录下的脚本进行相同操作。

MySQL 常用基础操作语句

掌握以下语句可应对大部分日常数据库维护需求。注意所有 SQL 语句末尾需加分号 ; 才能执行。

库与表管理

查看与切换:

  • 展示所有数据库:show databases;
  • 展示当前库所有表:show tables;
  • 切换/进入指定数据库:use 数据库名;

创建与删除:

  • 创建数据库(指定 UTF-8 编码):
    create database test character set utf8;
  • 删除数据库:
    drop database 库名;
  • 删除数据表:
    drop table 表名;
  • 查看表结构:
    describe 表名;
  • 修改引擎类型:
    ALTER TABLE tablename ENGINE = MyISAM;

SQL 文件导入

当需要在命令行中还原备份时,可使用 source 命令。路径建议转换为绝对路径格式:

source d:/mysql.sql;

基础增删改查演示

假设存在名为 my_demo.student 的数据表,以下为典型操作示例:

1. 创建数据表结构:

CREATE TABLE `student` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

2. 插入数据:

INSERT INTO `my_demo`.`student`(`id`, `name`) VALUES (1, '张三');

3. 更新/删除数据:

DELETE FROM `my_demo`.`student` WHERE `id` = 1;

4. 查询数据:

SELECT * FROM `my_demo`.`student` LIMIT 0,1000;

用户访问与权限分配

使用 GRANT 语句可为新用户授予权限或为已有用户调整权限。语法核心为:GRANT 权限 ON 数据库.表 TO '用户'@'主机' IDENTIFIED BY '密码';

常见授权场景

1. 全权限用户(本机访问):

// 允许用户 mrcy 从 localhost 访问所有数据库,拥有全部权限
grant all on *.* to mrcy@localhost Identified by "88888888";

2. 仅查询及读写权限:

// 赋予 select, insert, update, delete 权限
grant select,insert,update,delete on *.* to mrcy@localhost 
Identified by "123456";

3. 指定数据库权限:

// 仅对 test 数据库拥有全权限
grant all on test.* to mrcy@localhost Identified by "123";

4. 指定具体表的权限:

// 仅对 test 库下的 name 表拥有全权限
grant all on test.name to mrcy@localhost Identified by "123";

5. 允许任意 IP 访问:

// 注意安全风险,通常不建议在生产环境开放 '%' 
grant all on my_demo.* to akou@'%' Identified by '123456';

注意事项

  1. 密码强度: 现代 MySQL 版本通常有密码验证策略(如最低长度限制),设置密码失败可能是由于复杂度不达标。
  2. 符号规范: 密码中的引号必须使用英文半角状态下的单引号 ' 或双引号 "。
  3. 刷新权限: 授权完成后,若发现未生效,有时需要执行 FLUSH PRIVILEGES;。

查询现有用户列表

可以通过查询 mysql.user 系统表来查看所有已注册用户及其可访问的主机范围:

SELECT user,host FROM mysql.user;

以上就是 MySQL 命令行基本操作的详细内容,更多关于 MySQL 数据库配置与管理的资料请关注本站其它相关文章!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。