通过bat文件 进行mysql 连接 或者 操作涉及 密码的,如果密码 中有 % 号的话要特殊处理
比如我想在bat文件中进行一个数据库的连接 或者进行一个数据库中的 数据 导入或者导出(mysqldump) 这样子都会用到数据库密码,
假如这个数据库的密码 中又有 % 的话就要特殊转义一下才行执行这个bat文件了,不然 这个密码其实就是错误的,即没法操作到数据库的了,因为Windows的命令行解释器 在解释 % 时 是会把 % 看出一个特殊的字符,即转义的字符,即有特殊含义的,所以假如密码中有% 那要按照 2个% 转义成一个 %,4个%转义成2个% 这样子规则来重新修改一下密码才行,不然 最后密码会被转义成错误的密码从而没办法正常连接数据库或者操作数据库。
如:
@echo off
if "%1" == "" (goto input_data) ELSE (goto input_var)
:input_data
set /p var=INPUT DATE(fmt:yyyyMMddHHmm):
goto start
:input_var
set /a var=%1
goto start
:start
cd %cd%
md ..\..\to-save\TKcard\%var%
mysql -P3302 -uroot -pdst72j$mq)c%%8 -h61.160.245.119 -N -s -e"SET SESSION group_concat_max_len = 99999999;SELECT CONCAT('mysqldump -h61.160.245.119 -P3302 -uroot
-pdst72j$mq)c%%%%8 --opt -n TKCard_cn_cn_db210060000 ',GROUP_CONCAT(t.TABLE_NAME SEPARATOR ' '),' >') FROM information_schema.TABLES t WHERE t.TABLE_SCHEMA =
'TKCard_cn_cn_db210060000' AND (t.TABLE_NAME LIKE 'dict_%%') AND t.TABLE_NAME NOT IN('dict_keyvalue','dict_server','dict_operator_config');" > tkcard_dict.bat
for /f "delims=] tokens=1" %%a in (tkcard_dict.bat) do echo %%a ..\..\to-save\TKcard\%var%\tkcard_dict.sql >tkcard_dict.bat
call tkcard_dict.bat
上边 2处密码 原始密码皆为 dst72j$mq)c%8 ,即原始密码中含有一个%,但是我在通过bat文件编写时必须这样,即第一处编写时必须在%前多加1个%,第二处在%前多加3个%,这样子 bat文件在执行时通过转义才会把2处的密码转义成正确的原始密码:仅有一个% 的dst72j$mq)c%8
通过bat文件 进行mysql 连接 或者 操作涉及 密码的,如果密码 中有 % 号的话要特殊处理的更多相关文章
- python笔记7:mysql、redis操作
模块安装: 数据操作用到的模块pymysql,需要通过pip install pymysql进行安装. redis操作用的模块是redis,需要通过pip install redis进行安装. 检验是 ...
- Tomcat--startup.bat文件
Tomcat--startup.bat文件 如何启动tomcat,如何关闭tomcat等常规操作,我们应该都很清楚了,但是实际中我们经常会遇到一些恶心的情景,比如说正在我们撸码撸的很高兴的时候,ecl ...
- python&pandas 与mysql 连接
1. python 与mysql 连接及操作,直接上代码,简单直接高效: import MySQLdb try: conn = MySQLdb.connect(host='localhost',use ...
- Mysql:常用操作(导入数据,用户授权,远程连接授权,设置通信缓冲区的最大长度)
1.导入数据命令: mysql --host=localhost --port=3306 --user=root --password=hnsjt_lwsj@2018 szyszx_20180515- ...
- django 中连接mysql数据库的操作步骤
django中连接mysql数据库的操作步骤: 1 settings配置文件中 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mys ...
- windows系统下使用bat脚本文件设置MySQL系统环境变量
说明:在一个bat文件中设置tomcat环境变量后,不能直接使用,需要另起一个bat文件才能使用 号开头的行不要写在bat文件中 # 这个bat文件实现的功能:设置环境变量 @echo off set ...
- Swift3.0服务端开发(四) MySQL数据库的连接与操作
本篇博客我们来聊聊MySQL数据库的连接与操作.如果你本地没有MySQL数据库的话,需要你先安装MySQL数据库.在Mac OS中使用brew包管理器进行MySQL的安装是及其方便的.安装MySQL的 ...
- bat文件与Vbs文件常用操作(获取用户输入,执行VBS文件)
bat文件: set /P StrInput="输入数字:" echo 输入的数字为%StrInput% set /P Flg="是否执行(y/n):" IF ...
- 分享一个mysql服务启动与关闭的bat文件
有时候打开数据库可视化工具(sqlyog.navicat)连接数据库时,会出现以下报错信息. 大家都知道是数据库的服务没有启动. 所以我想给大家分享一个bat文件可供快速启动mysql的数据库的服务, ...
随机推荐
- JAVA用geotools读取shape格式文件
Shapefile属于一种矢量图形格式,它能够保存几何图形的位置及相关属性.但这种格式没法存储地理数据的拓扑信息. 其中,要组成一个Shapefile,有三个文件是必不可少的,它们分别是". ...
- Android 引导页的代码
布局代码 <android.support.v4.view.ViewPager android:id="@+id/viewpage" android:layout_width ...
- [币严BIZZAN区块链]Java生成ETH钱包助记词、私钥、地址
本文主要介绍在Java工程中如何生成ETH钱包的助记词.私钥.地址. 一.在之前创建的spring boot 项目中的 pom.xml文件中加入需要的依赖 <dependency> < ...
- command > /dev/null command > /dev/null 2>&1nohup command &> /dev/null的区别
1.对以下命令进行依次区分 command 执行一条普通的命令 command > /dev/null '>'表示将标准输出重定向 '>>'表示追加,/dev/null是一 ...
- springboot使用swagger2创建文档
一.导入swagger2依赖 <dependency> <groupId>io.springfox</groupId> <artifactId>spri ...
- Building Applications with Force.com and VisualForce (DEV401) (二) : Application Essentials:Designing Application on the Force.com Platform
Dev 401-002:Application Essentials:Designing Application on the Force.com Platform Course Objectives ...
- Go语言micro之快速搭建微服务
背景 go-micro给我们提供了一个非常便捷的方式来快速搭建微服务,而且并不需要提前系统了解micro,下面用一个简单的示例来快速实现一个服务. 创建Proto文件 因为我们要做微服务,那么就一定有 ...
- Ubuntu下已安装Anaconda但出现conda: command not found错误解决办法
原因:环境未配置 执行[vim ~/.bashrc]命令,进入配置文件,在最后一行按'o'插入一行,并添加语句: export PATH=/home/duanyongchun/anaconda3/bi ...
- centos7中安装mysql
centos7中安装mysql网上已经很多资源了,我就不在赘述了.我这里只是记录下我安装的时候出现的一些问题. 原文:https://www.cnblogs.com/bigbrotherer/p/72 ...
- SQL 实习
一. tem表 group by 分组后,有三个编号,找出最下的订单时间,比较选出时间段内的数据.注意group by 和 having的用法. group by 的用法 不用聚合函数的时候,每类出现 ...