mysql 命令行登录详解

mysql -?或者是mysql --help或者是mysql -I显示mysql命令的选项。

#最全的mysql登录方式:

mysql -hIP -uUSENME -pPWD -PPORT DBNAME -e "sql"

示例:
mysql -h189.132.131.149 -uname -pandes  -P3309 db_psw_manage


注:
-p后要么带密码,要么不带密码,如跟随密码不能有空格,如不带密码,系统会提示输入密码 -ptest :密码为test ,-p test 是不带密码登录test数据库,而后提示输入登录密码。

-e"sql"
对mysql偶尔有用的另一个选项是-e或--execute选项,可用来将SQL语句传递给服务器。该语句必须用引号引起来(单引号或双引号)。(然而,如果想要在查询中将值引起来,则对于查询应使用双引号,查询中引用的值应使用单引号)。当使用该选项时,语句被执行,然后mysql立即退出命令外壳。

-N去除表头
-B去除数据周围修饰字符


mysql -h10.132.131.149 -P3309 -uname -ppwd -e"select  * from test '"


mysql -h10.132.131.149 -P3309 -uname -ppwd -N   -e"select  * from test '"


mysql -h10.132.131.149 -P3309 -uusername -ppwd -N -B  -e"select  *  from test '"

#五种在登录时执行sql的办法 (推荐第3种,可以实现批量处理数据)


1. 双引号
mysql test -e"select * from test limit 10";
mysql test -N -e"select * from test limit 10";
mysql test -B -e"select * from test limit 10";

2.eof  方式
mysql test -B << eof
select * from test limit 10;
eof


mysql test -N << eof
select * from test limit 10;
eof


3.sql 语句方式 该方式的好处是大量的sql语句可以写在sql文件中,同时非常容易控制文件格式(方便查看脚本执行日志记录)。
mysql -N -B -e "`<t.sql`" |tee re.txt


4. 通过管道
echo "select * from test.test "| mysql

5.通过重定向

 mysql <te.txt |tee result.txt
原文地址:https://www.cnblogs.com/huangmr0811/p/5570995.html