Tianyi's Blog Tianyi's Blog
首页
  • 计算机网络
  • 操作系统
  • 计算机科学
  • Nginx
  • Vue框架
  • 环境配置
  • Java
  • JVM
  • Spring框架
  • Redis
  • MySQL
  • RabbitMQ
  • Kafka
  • Mirror Sites
  • Dev Tools
  • Docker
  • Jenkins
  • Scripts
  • Windows
  • 科学上网
  • 旅行
  • 网站日记
  • 软件
  • 电子产品
  • 杂野
  • 分类
  • 友情链接
GitHub (opens new window)

Tianyi

一直向前,永不停止
首页
  • 计算机网络
  • 操作系统
  • 计算机科学
  • Nginx
  • Vue框架
  • 环境配置
  • Java
  • JVM
  • Spring框架
  • Redis
  • MySQL
  • RabbitMQ
  • Kafka
  • Mirror Sites
  • Dev Tools
  • Docker
  • Jenkins
  • Scripts
  • Windows
  • 科学上网
  • 旅行
  • 网站日记
  • 软件
  • 电子产品
  • 杂野
  • 分类
  • 友情链接
GitHub (opens new window)
  • Java

  • Golang

  • JVM的奇妙世界

  • Spring

  • Spring增强封装

  • Redis

  • MySQL

    • MySQL其实很简单-frank
    • mysql常用命令
    • mysql从根上学习
    • MySQL安装
    • 备份、导入MySQL数据库
      • 备份MySQL数据库
        • 使用命令而不是GUI
        • 修改参数加快sql刷入
      • 使用命令行写入MySQL
        • 实践
        • 踩坑
        • 讲一下通过regedit进入注册表
  • RabbitMQ

  • Kafka

  • 分享

  • 后端
  • MySQL
tianyi
2022-06-08
目录

备份、导入MySQL数据库

  1. MySQL dump导出文件
  2. source 命令导入SQL文件

# 备份MySQL数据库

# 使用命令而不是GUI

GUI的简称是 "Graphical User Interface" CLI的简称是 "Command Line Interface"

快速导入指定SQL文件,比GUI快很多

mysql -uroot -proot < all.sql

# 指定数据库,其实只需要在sql里面加一行use就可以,避免错误出现
mysql -uroot -proot testdb < testdb.sql

# 导出整个实例
mysqldump -uroot -proot --all-databases > all_database.sql

# 导出指定库
mysqldump -uroot -proot --databases testdb > testdb.sql

# 导出指定表
mysqldump -uroot -proot testdb test_tb > test_tb.sql
1
2
3
4
5
6
7
8
9
10
11
12
13

# 修改参数加快sql刷入

# 1.进入MySQL命令行 临时修改这两个参数
set global innodb_flush_log_at_trx_commit = 2;
set global sync_binlog = 2000;

# 2.执行SQL脚本导入
mysql -uroot -proot testdb < testdb.sql

# 3.导入完成 再把参数改回来
set global innodb_flush_log_at_trx_commit = 1;
set global sync_binlog = 1;
1
2
3
4
5
6
7
8
9
10

# 使用命令行写入MySQL

# 实践

1、首先环境变量添加MySQL bin目录,以便

2、使用命令写入sql,会比较快

# 踩坑

今天这里踩了一个坑,电脑里放了很多个MySQL,其中一个MySQL只用到了bin文件夹,另外好几个MySQL都是冲突的状态,把这几个冲突都解决了发现找不到data文件夹。然后怀疑是不是配置文件惹的祸,发现服务端是能够读到了my.ini文件的,而这个my.ini文件刚好放到了环境变量里面。类似下图的效果。

所以开始使用命令导入的时候最好先配好环境变量

这里我们又引申出一个问题:在Windows中,执行命令时系统按照以下顺序查找可执行文件:

  1. 当前目录: 首先,在当前工作目录查找匹配的可执行文件。
  2. 系统目录: 如果当前目录没有,系统搜索系统目录(通常是"C:\Windows\System32")。
  3. Windows目录: 如果仍未找到,系统搜索Windows目录(通常是"C:\Windows")。
  4. 用户路径: 用户的自定义可执行文件路径(通过环境变量或注册表项配置)。
  5. 系统PATH环境变量: 查找PATH环境变量中列出的路径。
  6. App Paths注册表机制: 使用注册表中的"App Paths"来查找可执行文件。
    • 比较陌生的应该是App Paths注册表机制

如果找到匹配的可执行文件,系统将执行它;否则,将显示"命令未找到"错误。路径在环境变量和注册表中的设置决定了命令是否可被识别和执行。建议将常用程序的路径添加到PATH环境变量中,或确保相关的"App Paths"注册表项存在,以便更轻松地运行命令和程序。

# 讲一下通过regedit进入注册表

微软 推荐使用 App Paths 即修改此注册表项来添加可执行程序

通过regedit进入注册表,键入HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths,添加一行记录即可

参考:

完善页面 (opens new window)
MySQL安装
RabbitMQ

← MySQL安装 RabbitMQ→

最近更新
01
JDK
02-23
02
BadTasteCode && 优化
09-11
03
Gradle 实践操作指南及最佳实践
09-11
更多文章>
Theme by Vdoing | Copyright © 2021-2025 Tandy | 粤ICP备2023113440号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式