共计 1492 个字符,预计需要花费 4 分钟才能阅读完成。
导读 | 这篇文章主要介绍了 windows 下 bat 批处理执行 Mysql 的 sql 语句, 需要的朋友可以参考下 |
有时候我们需要用 bat 来定时执行 mysql 那么就可以参考下面的代码
直接上代码:
@ECHO OFF
SET dbhost= 主机名 (例如:127.0.0.1)
SET dbuser= 用户名(例如:root)SET dbpasswd= 用户密码 (例如:root)
SET dbName= 数据库名称(例如:test)SET sqlpath=%~dp0(此语句可以保证.bat 同级目录下的.sql 文件能被找到)set sqlfile=update.sql(需要执行执行 sql 的文件)进入 mysql 安装路径的 bin 目录下,如果配置了环境变量则不需要此语句(例如:cd /d C:\Program Files\MySQL\MySQL Server 5.5\bin):: 执行 SQL 脚本
mysql -h%dbhost% -u%dbuser% -p%dbpasswd%
windows 下执行 sql 文件 - 批量执行 sql 语句
新建一个 txt 文件,里面内容如下,改为.cmd 文件,点击运行即可:
rem MySQL_HOME 本地 MySQL 的安装路径
rem host mysql 服务器的 ip 地址,可以是本地,也可以是远程
rem port mysql 服务器的端口,缺省为 3306
rem user password 具有操作数据库权限的用户名和密码,如 root
rem default-character-set 数据库所用的字符集
rem database 要连接的数据名,这里用的 test
rem test.sql 要执行的脚本文件,这里为 test.sql
rem mysql 后面的应该放在一行。set MySQL_HOME=C:\mysql-4.1.10-win32
set PATH=%MySQL_HOME%\bin;%PATH%
例如:
Windows 下批处理执行 MySQL 脚本文件
@echo off
Setlocal enabledelayedexpansion
::CODER BY Mark_Li POWERD BY iBAT 1.6
cd "C:\Program Files\MySQL\MySQL Server 5.5\bin"
:: 数据库名称
@set db=hrms
:: 用户名
@set userName=root
:: 密码
@set password=
:: 要执行的 sql 脚本
@set sqlpath="C:\Program Files\MySQL\MySQL Server 5.5\test_hrms.sql"
:: 连接 MySQL 数据库并执行 sql 脚本 -f 脚本执行过程中,出现错误继续执行 --default-character-set 指定导入数据的编码(与数据库编码相同)mysql -f -u %userName% --password=%password% %db%
设置超时命令
在 my.ini 文件下加入
wait_timeout=2880000
interactive_timeout = 2880000
max_allowed_packet = 100M
如果要执行多个 SQL 脚本
将 test_hrms.sql 替换为 source "C:\Program Files\MySQL\MySQL Server 5.5\test_hrms.sql" "C:\Program Files\MySQL\MySQL Server 5.5\test_hrms2.sql"
"C:\Program Files\MySQL\MySQL Server 5.5\test_hrms3.sql"
正文完
星哥说事-微信公众号
![post-qrcode](https://www.xgss.net/wp-content/uploads/2023/07/二维码-微信公众号256x256.jpg)