如何在cmd上执行mysql的命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在cmd上执行mysql的命令相关的知识,希望对你有一定的参考价值。

原先我在cmd进入mysql手动使用如下的命令:
c:\mysql -uroot -p12345

(进入mysql)
mysql>use test;
mysql>source a.sql;
现在我想把它写成bat,该如何写
没个大神来看看么

把下面那段内容放到TXT,然后把txt的后缀改成bat即可

@echo off
mysql -uroot -p12345
use test
source a.sql

如果还不行

l改成

mysql -uroot -p12345&&use test&&source a.sql

追问

还是不行,只会进入到mysql命令中,等待输入

参考技术A

可以使用-e参数连接多条命令,不用进入mysql控制台单条执行

mysql -e "statement1; statement2"  dbname -u username -p password

追问

试了,不行哦,一闪而过

追答

你是怎么执行的?

追问

按照你给的格式放到txt里改成bat啊

追答

我估计你哪个地方有点问题,你仔细检查一下,我这里测试都可以的,mysql在cmd下的格式有要求,比如你的a.sql在e:\\下,就不能写成source e:\\a.sql;要写成source e:a.sql;不然会报错,还有些分号,空格等等,-e参数是mysql自带的,你还是详细查一下-e吧

mysql -e "select count(*) from limbs;,select now()" cookbook -uroot -p password

追问

我的sql文件就在mysql的安装目录下的bin中的。use test.sql和source xx.sql都是进入mysql后的命令

追答

我跟你说的-e参数就是不进入mysql环境下执行多条语句用的,至于为什么你的会闪退,要么你试着重装mysql,要么把命令写在a.sql中,不用在mysql环境中source a.sql,直接在bin目录下

mysql -uroot -ppassword < a.sql //这里可以写a.sql的绝对路径,但执行这条命令必须在bin目录下

 

参考技术B 你可以将mysql路径写入环境变量就不需要cd进mysql目录了追问

你理解错意思了

参考技术C 直接把这段放bat中就可以追问

不行,只会运行第一句

如何正确卸载MySQL?

简述:重装MySQL时需要卸载旧版本的MySQL,如果未正确卸载,cmd中对新版本执行mysqld -install时会提示服务已存在,还煞有介事地摆出路径,明明已经被我删掉了啊!这时也许你应该试试多执行一条命令:sc delete mysql


 

 

现在谈谈卸载流程:

1.cmd执行net stop mysql,关闭mysql服务。

2.网上卸载教程似乎安装版很多,那就在程序列表中卸载之。免安装版无视此步骤。

3.删除mysql所在文件夹

4.删除注册表:第一个\\HKEY_LOCAL_MACHINE\\SYSTEM\\ControlSet001\\services\\eventlog\\Application\\MySQL

第二个\\HKEY_LOCAL_MACHINE\\SYSTEM\\ControlSet002\\services\\eventlog\\Application\\MySQL

5.cmd执行sc delete mysql,现在可以重装了

 


补充:重装MySQL时,如果执行net start mysql提示找不到路径时,改一下注册表:就在如上路径CurrentControlSet下的services项下找MySQL的imagePath变量中,路径还是上个版本的,改为当前mysqld.exe的路径(bin文件夹),可能ControlSet002的同款项也要改,最后把ControlSet001、ControlSet002、CurrentControlSet三个都看一下

 

以上是关于如何在cmd上执行mysql的命令的主要内容,如果未能解决你的问题,请参考以下文章

如何使用CMD打开某应用程序命令行并在打开的应用程序中执行指定命令?

如何让Python脚本在cmd下执行

Mysql如何运行cmd命令,就像Mssql中的xpcmdshell

mysql如何创建数据库?

cmd 执行sql脚本,该怎么处理

cmd怎么执行sql脚本