首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >MySQL数据库操作完全指南:从入门到闭关

MySQL数据库操作完全指南:从入门到闭关

原创
作者头像
程序视点
发布2025-06-23 15:05:01
发布2025-06-23 15:05:01
25700
代码可运行
举报
文章被收录于专栏:程序小小事程序小小事
运行总次数:0
代码可运行

大家好,欢迎来到程序视点!我是你们的老朋友.小二!

前言

MySQL数据库操作,之前也分享了很多了。 今天来一个完全流程版本的指南!内容不高深,但MySQL操作的基本整体流程必备!

一、MySQL连接与基础操作

1.1 连接MySQL服务器

本地连接:

代码语言:javascript
代码运行次数:0
运行
复制
mysql -u root -p
  • 进入MySQL安装目录的bin文件夹后执行
  • root用户初始可能无密码,直接回车即可
  • 成功连接后提示符变为mysql>

远程连接:

代码语言:javascript
代码运行次数:0
运行
复制
mysql -h110.110.110.110 -u root -p123
  • -h参数指定远程主机IP
  • 密码直接跟在-p后无需空格

退出MySQL:

代码语言:javascript
代码运行次数:0
运行
复制
exit;
1.2 密码管理

修改root密码:

代码语言:javascript
代码运行次数:0
运行
复制
mysqladmin -u root -p旧密码 password 新密码

示例:

代码语言:javascript
代码运行次数:0
运行
复制
mysqladmin -u root password ab12       # 设置初始密码
mysqladmin -u root -p ab12 password djg345  # 修改密码

二、用户权限管理

2.1 创建用户并授权

创建全权限用户(谨慎使用):

代码语言:javascript
代码运行次数:0
运行
复制
GRANT SELECT,INSERT,UPDATE,DELETE ON *.* TO 'test1'@'%' IDENTIFIED BY 'abc';
  • %表示允许从任何主机连接
  • 权限包括查询、插入、更新、删除

创建受限用户:

代码语言:javascript
代码运行次数:0
运行
复制
GRANT SELECT,INSERT,UPDATE,DELETE ON mydb.* TO 'test2'@'localhost' IDENTIFIED BY 'abc';
  • 仅允许本地访问
  • 仅限mydb数据库操作

三、数据库操作

3.1 创建数据库

基本创建:

代码语言:javascript
代码运行次数:0
运行
复制
CREATE DATABASE xhkdb;

完整创建流程(推荐):

代码语言:javascript
代码运行次数:0
运行
复制
CREATE DATABASE mydb;
GRANT ALL PRIVILEGES ON mydb.* TO 'mydb'@'localhost' IDENTIFIED BY 'password';
SET PASSWORD FOR 'mydb'@'localhost' = OLD_PASSWORD('password');
3.2 数据库管理

查看所有数据库:

代码语言:javascript
代码运行次数:0
运行
复制
SHOW DATABASES;

删除数据库:

代码语言:javascript
代码运行次数:0
运行
复制
DROP DATABASE IF EXISTS xhkdb;  # 安全删除方式

选择数据库:

代码语言:javascript
代码运行次数:0
运行
复制
USE xhkdb;

查看当前数据库:

代码语言:javascript
代码运行次数:0
运行
复制
SELECT DATABASE();

四、表操作

4.1 创建表
代码语言:javascript
代码运行次数:0
运行
复制
CREATE TABLE MyClass (
    id INT(4) NOT NULL PRIMARY KEY AUTO_INCREMENT,
    name CHAR(20) NOT NULL,
    sex INT(4) NOT NULL DEFAULT '0',
    degree DOUBLE(16,2)
);
  • PRIMARY KEY设置主键
  • AUTO_INCREMENT自动递增
  • DEFAULT设置默认值
4.2 表管理

删除表:

代码语言:javascript
代码运行次数:0
运行
复制
DROP TABLE IF EXISTS MyClass;

修改表名:

代码语言:javascript
代码运行次数:0
运行
复制
RENAME TABLE MyClass TO YouClass;

五、数据操作

5.1 插入数据
代码语言:javascript
代码运行次数:0
运行
复制
INSERT INTO MyClass VALUES
(1,'Tom',96.45),
(2,'Joan',82.99),
(3,'Wang',96.59);
5.2 查询数据

基本查询:

代码语言:javascript
代码运行次数:0
运行
复制
SELECT * FROM MyClass;

条件查询:

代码语言:javascript
代码运行次数:0
运行
复制
SELECT name, degree FROM MyClass WHERE degree > 90;

限制结果集:

代码语言:javascript
代码运行次数:0
运行
复制
SELECT * FROM MyClass ORDER BY id LIMIT 2;  # 前2条记录
5.3 更新数据
代码语言:javascript
代码运行次数:0
运行
复制
UPDATE MyClass SET name='Mary' WHERE id=1;
5.4 删除数据
代码语言:javascript
代码运行次数:0
运行
复制
DELETE FROM MyClass WHERE id=1;

六、表结构修改

6.1 添加字段
代码语言:javascript
代码运行次数:0
运行
复制
ALTER TABLE MyClass ADD passtest INT(4) DEFAULT '0';
6.2 修改字段
代码语言:javascript
代码运行次数:0
运行
复制
ALTER TABLE MyClass CHANGE name fullname VARCHAR(30);
6.3 删除字段
代码语言:javascript
代码运行次数:0
运行
复制
ALTER TABLE MyClass DROP passtest;
6.4 索引管理

添加索引:

代码语言:javascript
代码运行次数:0
运行
复制
ALTER TABLE MyClass ADD INDEX idx_name (name);

添加唯一索引:

代码语言:javascript
代码运行次数:0
运行
复制
ALTER TABLE MyClass ADD UNIQUE idx_card (cardnumber);

删除索引:

代码语言:javascript
代码运行次数:0
运行
复制
ALTER TABLE MyClass DROP INDEX idx_name;

七、数据库备份与恢复

7.1 备份整个数据库
代码语言:javascript
代码运行次数:0
运行
复制
mysqldump -u root -p database_name > backup.sql
7.2 备份单个表
代码语言:javascript
代码运行次数:0
运行
复制
mysqldump -u root -p database_name table_name > table_backup.sql
7.3 备份数据库结构
代码语言:javascript
代码运行次数:0
运行
复制
mysqldump -u root -p -d --add-drop-table database_name > struct_backup.sql
7.4 恢复数据库
代码语言:javascript
代码运行次数:0
运行
复制
mysql -u root -p database_name < backup.sql

八、实用技巧

8.1 查看MySQL版本
代码语言:javascript
代码运行次数:0
运行
复制
SELECT VERSION();
8.2 查看当前时间
代码语言:javascript
代码运行次数:0
运行
复制
SELECT NOW();
8.3 字符串连接
代码语言:javascript
代码运行次数:0
运行
复制
SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM employees;
8.4 数学运算
代码语言:javascript
代码运行次数:0
运行
复制
SELECT (4*4)/10+25;  # 结果为26.60

九、完整实例

9.1 创建学校数据库
代码语言:javascript
代码运行次数:0
运行
复制
DROP DATABASE IF EXISTS school;
CREATE DATABASE school;
USE school;

CREATE TABLE teacher (
    id INT(3) AUTO_INCREMENT NOT NULL PRIMARY KEY,
    name CHAR(10) NOT NULL,
    address VARCHAR(50) DEFAULT '深圳',
    year DATE
);

INSERT INTO teacher VALUES
(NULL,'allen','大连一中','1976-10-10'),
(NULL,'jack','大连二中','1975-12-23');
9.2 批量执行SQL文件
代码语言:javascript
代码运行次数:0
运行
复制
mysql -u root -p < school.sql

或MySQL命令行中:

代码语言:javascript
代码运行次数:0
运行
复制
SOURCE school.sql;

十、安全建议

  1. 避免使用%开放远程访问权限
  2. 为每个应用创建单独的用户和数据库
  3. 定期备份重要数据
  4. 使用复杂密码并定期更换
  5. 限制用户权限到最小必要范围

通过掌握这些MySQL操作命令,您将能够高效地管理和维护MySQL数据库。建议在实际操作前先在测试环境练习,确保熟悉各项命令的效果和影响。

最后

MySQL操作命令和语法比较繁杂!数据是项目的生命。如需了解跟多MySQL进阶高级内容,请查阅下方文档内容!

「MySQL高级 - 带源码课件」 链接:https://pan.quark.cn/s/e58e376d5270

课程内容: 1.快速掌握索引,如何避免索引失效,索引的优化策略 2.了解innodb和myisam存储引擎 3.熟悉MySQL锁机制 4.能熟练配置MySQL主从复制 5.熟练掌握explain、show profile、慢查询日志等日常SQL诊断和性能分析策略等

【程序视点】助力打工人减负,从来不是说说而已!

后续小二哥会继续详细分享更多实用的工具和功能。

如果这篇文章对你有用的话,别忘了【一键三连】支持下哦~

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 一、MySQL连接与基础操作
    • 1.1 连接MySQL服务器
    • 1.2 密码管理
  • 二、用户权限管理
    • 2.1 创建用户并授权
  • 三、数据库操作
    • 3.1 创建数据库
    • 3.2 数据库管理
  • 四、表操作
    • 4.1 创建表
    • 4.2 表管理
  • 五、数据操作
    • 5.1 插入数据
    • 5.2 查询数据
    • 5.3 更新数据
    • 5.4 删除数据
  • 六、表结构修改
    • 6.1 添加字段
    • 6.2 修改字段
    • 6.3 删除字段
    • 6.4 索引管理
  • 七、数据库备份与恢复
    • 7.1 备份整个数据库
    • 7.2 备份单个表
    • 7.3 备份数据库结构
    • 7.4 恢复数据库
  • 八、实用技巧
    • 8.1 查看MySQL版本
    • 8.2 查看当前时间
    • 8.3 字符串连接
    • 8.4 数学运算
  • 九、完整实例
    • 9.1 创建学校数据库
    • 9.2 批量执行SQL文件
  • 十、安全建议
  • 最后
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档