mysql连接远程数据库的用法
mysql -u root -p 等这些常用的参数外,你知道多少?来测试一下吧
一,mysql命令行参数
- Usage: mysql [OPTIONS] [database] //命令方式
- -?, --help //显示帮助信息并退出
- -I, --help //显示帮助信息并退出
- --auto-rehash //自动补全功能,就像linux里面,按Tab键出提示差不多,下面有例子
- -A, --no-auto-rehash //默认状态是没有自动补全功能的。-A就是不要自动补全功能
- -B, --batch //ysql不使用历史文件,禁用交互
- (Enables --silent)
- --character-sets-dir=name //字体集的安装目录
- --default-character-set=name //设置数据库的默认字符集
- -C, --compress //在客户端和服务器端传递信息时使用压缩
- -#, --debug[=#] //bug调用功能
- -D, --database=name //使用哪个数据库
- --delimiter=name //mysql默认命令结束符是分号,下面有例子
- -e, --execute=name //执行mysql的sql语句
- -E, --vertical //垂直打印查询输出
- -f, --force //如果有错误跳过去,继续执行下面的
- -G, --named-commands
- /*Enable named commands. Named commands mean this program's
- internal commands; see mysql> help . When enabled, the
- named commands can be used from any line of the query,
- otherwise only from the first line, before an enter.
- Disable with --disable-named-commands. This option is
- disabled by default.*/
- -g, --no-named-commands
- /*Named commands are disabled. Use \* form only, or use
- named commands only in the beginning of a line ending
- with a semicolon (;) Since version 10.9 the client now
- starts with this option ENABLED by default! Disable with
- '-G'. Long format commands still work from the first
- line. WARNING: option deprecated; use
- --disable-named-commands instead.*/
- -i, --ignore-spaces //忽视函数名后面的空格.
- --local-infile //启动/禁用 LOAD DATA LOCAL INFILE.
- -b, --no-beep //sql错误时,禁止嘟的一声
- -h, --host=name //设置连接的服务器名或者Ip
- -H, --html //以html的方式输出
- -X, --xml //以xml的方式输出
- --line-numbers //显示错误的行号
- -L, --skip-line-numbers //忽略错误的行号
- -n, --unbuffered //每执行一次sql后,刷新缓存
- --column-names //查寻时显示列信息,默认是加上的
- -N, --skip-column-names //不显示列信息
- -O, --set-variable=name //设置变量用法是--set-variable=var_name=var_value
- --sigint-ignore //忽视SIGINT符号(登录退出时Control-C的结果)
- -o, --one-database //忽视除了为命令行中命名的默认数据库的语句。可以帮跳过日志中的其它数据库的更新。
- --pager[=name] //使用分页器来显示查询输出,这个要在linux可以用more,less等。
- --no-pager //不使用分页器来显示查询输出。
- -p, --password[=name] //输入密码
- -P, --port=# //设置端口
- --prompt=name //设置mysql提示符
- --protocol=name //使用什么协议
- -q, --quick //不缓存查询的结果,顺序打印每一行。如果输出被挂起,服务器会慢下来,mysql不使用历史文件。
- -r, --raw //写列的值而不转义转换。通常结合--batch选项使用。
- --reconnect //如果与服务器之间的连接断开,自动尝试重新连接。禁止重新连接,使用--disable-reconnect。
- -s, --silent //一行一行输出,中间有tab分隔
- -S, --socket=name //连接服务器的sockey文件
- --ssl //激活ssl连接,不激活--skip-ssl
- --ssl-ca=name //CA证书
- --ssl-capath=name //CA路径
- --ssl-cert=name //X509 证书
- --ssl-cipher=name //SSL cipher to use (implies --ssl).
- --ssl-key=name //X509 密钥名
- --ssl-verify-server-cert //连接时审核服务器的证书
- -t, --table //以表格的形势输出
- --tee=name //将输出拷贝添加到给定的文件中,禁时用--disable-tee
- --no-tee //根--disable-tee功能一样
- -u, --user=name //用户名
- -U, --safe-updates //Only allow UPDATE and DELETE that uses keys.
- -U, --i-am-a-dummy //Synonym for option --safe-updates, -U.
- -v, --verbose //输出mysql执行的语句
- -V, --version //版本信息
- -w, --wait //服务器down后,等待到重起的时间
- --connect_timeout=# //连接前要等待的时间
- --max_allowed_packet=# //服务器接收/发送包的最大长度
- --net_buffer_length=# //TCP / IP和套接字通信缓冲区大小。
- --select_limit=# //使用--safe-updates时SELECT语句的自动限制
- --max_join_size=# //使用--safe-updates时联接中的行的自动限制
- --secure-auth //拒绝用(pre-4.1.1)的方式连接到数据库
- --server-arg=name //Send embedded server this as a parameter.
- --show-warnings //显示警告
二,mysql命令行实例
1,auto-rehash自动补全
说例子前,先说一下,你到google或baidu上面搜一下mysql auto-rehash,然后会出来结果,绝大部分都是一样的,并且内容里面有明显错误。mysqld_safe --user=mysql --auto-rehash &,这个根本就不对,为什么抄袭的人不知道自己测试一下,对于这种人,我也是很无语的。你自己写着玩到也无所谓,但是你会害人的。
[root@BlackGhost zhangy]# mysqld_safe --help |grep rehash
参数选项中根本没有auto-rehash
二种方法可以实现自动补全功能
---------------------------------------
[mysql]
#no-auto-rehash
auto-rehash
---------------------------------------
mysql -u root --auto-rehash
---------------------------------------
- mysql> use test
- Database changed
- mysql> select acc //这里自动补全,只是提示表名,和表里面的字段名,不像php可以提示函数名
- account account.acct_num account.amount acct_num
2,-B的用法
- D:\xampp\mysql\bin>mysql.exe -uroot -D bak_test -e "show tables;" -B
- Tables_in_bak_test
- comment
- user
3,-E的用法
- D:\xampp\mysql\bin>mysql.exe -uroot bak_test -e "show tables;" -E
- *************************** 1. row ***************************
- Tables_in_bak_test: comment
- *************************** 2. row ***************************
- Tables_in_bak_test: user
4,-D的用法
- [root@BlackGhost zhangy]# mysql -u root -D test
进入后默认就在test数据库里面,不要用use test;
5,--default-character-set设置默认字符集
- [root@BlackGhost zhangy]# mysql -u root -D test --default-character-set=utf8
6,--delimiter设置mysql命令结束符
- [root@BlackGhost zhangy]# mysql -u root -D test --delimiter=\|
mysql默认的命令结束符是分号,现在把它设置成竖杠,要注意|前面的\
7,-e的用法
- D:\xampp\mysql\bin>mysql.exe -uroot -D bak_test -e "show tables;"
这个很有用的,因为我不用进入mysql客户里面去,就能把我要的数据取出来,这个可以配合shell脚本的话,能发挥很大的功能
8,-f的用法
- D:\xampp\mysql\bin>mysql.exe -uroot bak_test -e "show databaseds;show tables;" -
- f
- ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the ma
- nual that corresponds to your MySQL server version for the right syntax to use n
- ear 'databaseds' at line 1
- +--------------------+
- | Tables_in_bak_test |
- +--------------------+
- | comment |
- | user |
- +--------------------+
忽略mysql的错误,继续向下执行
9,-N的用法
- D:\xampp\mysql\bin>mysql.exe -uroot bak_test -e "select * from user" -N
- +---+------+---+
- | 1 | bb | 0 |
- | 2 | tank | 0 |
- +---+------+---+
10,-p的用法
- [root@BlackGhost zhangy]# mysql -u root -o test -p -S /tmp/mysql.sock
- Enter password
11,-h的用法
- [root@BlackGhost zhangy]# mysql -u root -h 192.168.1.102
服务器可能不只一个,这个时间我们可以用-h来指定连接哪里
12,-H的用法
- D:\xampp\mysql\bin>mysql.exe -uroot bak_test -e "show tables " -H
- <TABLE BORDER=1><TR><TH>Tables_in_bak_test</TH></TR><TR><TD>comment</TD></TR><TR
- ><TD>user</TD></TR></TABLE>
13,-X的用法
- D:\xampp\mysql\bin>mysql.exe -uroot bak_test -e "show tables " -X
- <?xml version="1.0"?>
- <resultset statement="show tables
- " xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <row>
- <field name="Tables_in_bak_test">comment</field>
- </row>
- <row>
- <field name="Tables_in_bak_test">user</field>
- </row>
- </resultset>
14,--prompt的用法
- [root@BlackGhost zhangy]# mysql -u root --prompt=\^\_\^
- ^_^show databases;
- +--------------------+
- | Database |
- +--------------------+
- | information_schema |
- | biztojie |
mysql的提示符,我把它设置成笑脸了。
15,-S的用法
- [root@BlackGhost zhangy]# mysql -u root -D test -S /tmp/mysql.sock
当我们一台服务器启动了二个不同mysql版本的时候,存放socket的文件是不能一样的,-S用来指定连接到那个
16,-v的用法
- [root@BlackGhost zhangy]# mysql -u root -D test -e "show tables;" -v
- --------------
- show tables
- --------------
内容不止这么点,只说重点
17,-P的用法
- [root@BlackGhost zhangy]# mysql -u root -o test -P 13306 -S /tmp/mysql.sock
参数有很多,个人觉得这些是比较常用的,还有参数有的可以排列组合的。在这儿就不试了。
mysql连接远程数据库的用法的更多相关文章
- navcat for mysql 连接远程数据库 教程
1.首先进入数据库: mysql -uroot -p 2.然后打开数据库设置远程连接权限: mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'ID ...
- 通过mysql 连接远程数据库时,输入密码后,提示10060错误
能提示输入密码,说明网络能够连接,而且能连到服务器.输入密码后提示错误,说明应该是权限问题 解决方法: 一.进入mysql数据库命令行 二.输入use mysql; 三.设置root账号密码为1 ...
- MySQL 连接本地数据库、远程数据库命令
一.MySQL 连接本地数据库,用户名为“root”,密码“123”(注意:“-p”和“123” 之间不能有空格) C:/>mysql -h localhost -u root -p123 二. ...
- mysql之通过cmd连接远程数据库
---恢复内容开始--- 目录 前提 连接远程数据库 前提: 本地安装了mysql数据库 本地和远程网络是连通的,通过命令ping ip (即ping 192.168.0.333),可以ping通 连 ...
- Navicat 连接远程数据库报错:1130 - Host "XX.XX.XX.XX" is not allowed to connect to this MySQL server
Navicat 连接远程数据库报错:1130 - Host "XX.XX.XX.XX" is not allowed to connect to this MySQL server ...
- Navicat 连接远程数据库报错:2003 - Can‘’t connect to MySQL server on 'XX.XX.XX.XX' (10061)
Navicat 连接远程数据库报错:2003 - Can‘’t connect to MySQL server on '172.22.69.190' (10061) 一.原因 远程数据库使用了默认设 ...
- mysql登陆远程数据库
1.登陆mysql 2.e mysql; 3.比如用户名密码为root/root. 你想root使用root从任何主机连接到mysql服务器的话. @’ ’后面加ip地址一般般为localhost或者 ...
- 通过SSH隧道的本地转发实现Django连接远程数据库
SSH连接命令 默认连接的端口为22 1. 使用私钥 ssh -p connect_port user_name@host -i your_private_identity 2. 使用用户密码 ssh ...
- navicat连接远程数据库报错'client does not support authentication protocol requested by server consider ...'解决方案
[1.cmd终端连接远程mysql数据库方法] mysql -uhello -pworld -h192.168.1.88 -P3306 -Dmysql_oa mysql -u用户名 -p密码 -h ...
随机推荐
- jsp自己主动编译机制
总的来说,Jasper的自己主动检測实现的机制比較简单,依靠某后台线程不断检測JSP文件与编译后的class文件的最后改动时间是否同样,若同样则觉得没有改动.但倘若不同则须要又一次编译.实际上因为在T ...
- JDK的动态代理机制
JDK Proxy OverView jdk的动态代理是基于接口的,必须实现了某一个或多个随意接口才干够被代理,并且仅仅有这些接口中的方法会被代理.看了一下jdk带的动态代理api.发现没有样例实在是 ...
- Java中的四种引用类型,强引用,软引用,弱引用,虚引用
对于Java中的垃圾回收机制来说,对象是否被回收的标准在于该对象是否被引用.因此,引用也是JVM进行内存管理的一个重要概念. Java中对象的引用一般有以下4种类型: 1强引用 2软引用 3弱引用 ...
- JSON 常用数据转换
#endregion #region Json字符串转换为DataTable 实例方法 public DataTable JsonToDataTable(json) { DataTable dt= T ...
- SQL基础之聚合与排序
聚合函数是用来求和,平均值,最大最小值一类的函数. 常用的有COUNT.SUM.MAX.MIN.AVG. count() 参数为列名,也可以使用*,表示全部列. 默认*会统计所有行的数据,如果想过滤掉 ...
- 亚信UED前端流程自动化构建工具
亚信UED前端流程自动化构建工具 .wmd-input, .wmd-input:focus, #md-section-helper {font-size: 14px !important;line-h ...
- dbutils使用---QueryRunner实现in批量查询
sql.append("AND a.").append(MchStore.STORE_PROVINCE_COL).append(" IN ("); for (i ...
- Golang并发原理及GPM调度策略(一)
其实从一开始了解到go的goroutine概念就应该想到,其实go应该就是在内核级线程的基础上做了一层逻辑上的虚拟线程(用户级线程)+ 线程调度系统,如此分析以后,goroutine也就不再那么神秘了 ...
- 6:7 题一起MySQL数据库分库备份
企业Shell面试题6:MySQL数据库分表备份 请实现对MySQL数据库进行分表备份,用脚本实现. 解答: [root@db01 scripts]# cat fenbiao.sh #!/bin/ba ...
- pip 使用技巧
指定豆瓣源安装 pip install configparser -i http://pypi.douban.com/simple/ --trusted-host=pypi.douban.com/si ...