mysql(MySQL客户端连接工具)
在MySQL提供的工具中,DBA使用最频繁的莫过于mysql。这里的mysql不是指MySQL服务,也不是mysql数据库,而是连接数据库的客户端工具。类似于Oracle的sqlplus。
语法:
mysql [options][database]
options是mysql的可用选项,一次可以写一个或者多个,甚至可以不写。database表示连接的数据库,一次只能写一个或者不写,如果不写,在登录数据库后还需要使用use dbname选择数据库。
mysql的选项通常有两种表达方式:
-+选项单词的缩写+选项值**;--+选项的完整单词+=+选项的实际值;
例如:
mysql -uroot -ppassword
mysql --user=root --password=password
1.连接选项
-u,--user=name 指定连接的用户名
-p,--password=password 指定连接密码
-h,--host=name 指定服务器IP或域名
-P,--port=3308 指定连接端口
在默认情况下,如果这些选项都不写,mysql将会使用'用户'@'localhost'和空密码连接本机的3306端口。空用户会在mysql安装完毕后自动生成,这也就是仅使用mysql命令就能连到数据库的原因。
如果客户端和服务器在用一台机器上,通常不需要指定-h选项,否则需要指定mysql服务所在的IP或主机名。如果不指定端口,默认连接到3306端口。示例如下:
# mysql -h 10.10.200.202 -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 75520
Server version: 5.6.28 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
2.指定客户端字符集
--default-character-set=charset-name为服务器的字符集选项。该选项可以配置在my.cnf的[mysqld]组中,同样也可以作为客户端字符集选项,也可以配置在[mysql]组中。在使用mysql命令登录数据库时,使用--default-character-set选项可以指定客户端的字符集。例如,如果未使用--default-character-set选项登录数据库时:
# mysql -h 10.10.200.202 -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 75520
Server version: 5.6.28 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show variables like 'chara%';
+--------------------------+-----------------------------------------+
| Variable_name | Value |
+--------------------------+-----------------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql-5.6.28/share/charsets/ |
+--------------------------+-----------------------------------------+
当使用--default-character-set选项登录数据库时:
# mysql -h 10.10.200.202 -uroot -p --default-character-set=utf8
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 75542
Server version: 5.6.28 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show variables like 'chara%';
+--------------------------+-----------------------------------------+
| Variable_name | Value |
+--------------------------+-----------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql-5.6.28/share/charsets/ |
+--------------------------+-----------------------------------------+
8 rows in set (0.01 sec)
3.执行选项
-e,--execute=name 执行sql语句并退出
此选项可以直接在客户端执行SQL语句,而不用连接到MySQL数据库后再执行,对于一些脚本的执行,使用此法较为便利。可以使用此种方法连续执行多条SQL语句,语句之间用分号(;)分隔例如:
# mysql -uroot -p mysql -e "select host,user from user"
Enter password:
+--------------------+--------+
| host | user |
+--------------------+--------+
| 10.10.200.201 | root |
| 10.10.200.201 | zabbix |
| 127.0.0.1 | root |
| ::1 | root |
| localhost | |
| localhost | root |
| localhost | zabbix |
| tcxx-ops-mysql-202 | |
| tcxx-ops-mysql-202 | root |
+--------------------+--------+
4.格式化选项
-E,--vertical 将输出按字段顺序垂直显示 -s,--silent 去掉SQL输出结果中的线条框
# mysql -uroot -p mysql -e "select host,user from user" -E
Enter password:
*************************** 1. row ***************************
host: 127.0.0.1
user: root
*************************** 2. row ***************************
host: ::1
user: root
*************************** 3. row ***************************
host: localhost
user:
*************************** 4. row ***************************
host: localhost
user: root
*************************** 5. row ***************************
host: test-server
user:
*************************** 6. row ***************************
host: test-server
user: root
mysql(MySQL客户端连接工具)的更多相关文章
- 10款最好用的MySQL数据库客户端图形界面管理工具
MySQL Workbench 该工具由MySQL开发,是一个跨平台的可视化数据库设计工具.它是DBDesigner4项目备受期待的替代者,它是一个本地图形化工具,支持的操作系统包括Windows.L ...
- 关于 mysql 2003 客户端连接报错的处理方法
在连接到 mysql 数据库服务器时,有时会在客户端报出 2003 的错误代码,并提示: 无法连接到服务器,但服务器却可以 ping 通,可能的原因如下: 1.网络不通.检查能不能ping通. 2.防 ...
- docker 安装完mysql 后客户端无法访问
1.在虚拟机的centos 中安装 docker 的mysql 镜像. docker run --name mysql01 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=12 ...
- MySQL C 客户端的内存泄漏问题
我们的一个服务器软件在线上环境运行时出现了内存缓慢增长的问题. 用valgrind测试 MySQL的C客户端mysqlclient发现,它在正常的使用中会被valgrind报出存在内存泄漏. 1 正常 ...
- Adminer - 类似于phpMyAdmin的MySQL管理客户端
Adminer是一个类似于phpMyAdmin的MySQL管理客户端.整个程序只有一个PHP文件,易于使用和安装.Adminer支持多语言(已自带11种翻译语言文件,可以按自己的需求翻译相应的语言). ...
- MySQL常用客户端 命令
登录MySQL mysql -h localhost -uroot -p 授权指定用户访问指定数据库 GRANT ALL ON cookbook.* TO 'cbuser'@'localhost' I ...
- ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
有时候,当我们使用"mysql"."mysqladmin"."mysqldump"等命令管理数据库时,服务器抛出类似如下错误: 一.错误现场 ...
- 解决: Can’t connect to local MySQL server through socket /var/lib/mysql/mysql.sock
今天在搬瓦工上使用mysql 命令行,总报一个这样的错:Can't connect to local MySQL server through socket '/xxxxx/mysql.sock',一 ...
- [mysql] mysql 5.6.X 慢查询日志
慢查询日志 一篇好文章,学习保存.... 打开慢查询日志 慢查询日志,顾名思义就是记录执行比较慢查询的日志. 查看是否开启慢查询日志: show variables like '%slow%'; 打开 ...
- ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13)解答
我在使用mysqll客户端连接我的mysql服务器的时候,出现了上述的问题.我的操作系统是ubuntu,安装版本是对应的64位服务器.我的服务器的启动方式是sudo service mysql sta ...
随机推荐
- 通用方法解决UITextFiled输入的时候,键盘遮挡问题
我们在用键盘录入的时候,有可能会遮挡录入框,所以我们应调整UIView的位置,使其不被遮挡.我写了一个通用的方法可以解决这个问题:1. [代码][C/C++]代码 - (void) ...
- Android图片加载神器之Fresco, 基于各种使用场景的讲解
Fresco是Facebook开源Android平台上一个强大的图片加载库,也是迄今为止Android平台上最强大的图片加载库. 优点:相对于其他开源的第三方图片加载库,Fresco拥有更好的内存管理 ...
- codeforces 463B Caisa and Pylons 解题报告
题目链接:http://codeforces.com/problemset/problem/463/B 题目意思:Caisa 站在 0 pylon 并且只有 0 energy,他需要依次跳过1 pyl ...
- .NET CORE2.0后台管理系统(一)配置API
一:引用关系图 要写一个项目首先离不开的就是一个清晰的流程图,当然我这里很简单. 上诉完成后打开api下的Startup.cs文件,因为我是配置好了所在我直接上传代码然后介绍一下: using Sys ...
- Java面向对象的三大特征详解
一.封装(Encapsulation) 封装也称信息隐藏,是指利用抽象数据类型把数据和基于数据的操作封装起来,使其成为一个不可分割的整体,数据隐藏在抽象数据内部,尽可能的隐藏数据细节,只保 ...
- linux 查看某进程 并杀死进程 ps grep kill
Linux 中使用top 或 ps 查看进程使用kill杀死进程 1.使用top查看进程: $top 进行执行如上命令即可查看top!但是难点在如何以进程的cpu占用量进行排序呢? cpu占用量排序执 ...
- Spark Streaming之三:DStream解析
DStream 1.1基本说明 1.1.1 Duration Spark Streaming的时间类型,单位是毫秒: 生成方式如下: 1)new Duration(milli seconds) 输入毫 ...
- java 内存管理机制
垃圾收集算法 1.标记清理算法:效率不高(标记和清理过程效率都不高).会形成内存碎片 2.复制算法:把内存分为两部分,当进行回收时,把使用部分的存活对象复制到未使用部分,然后两部分内存角色互换(一个为 ...
- c/c++面试45-50之字符串
45 使用库函数将数字转换为字符串,下面是常用库函数 (1) itoa():将整型转换为字符串 (2)ltoa():将长整形转换为字符串 (3)gcvt():将浮点转换为字符串 46 不使用库函数将整 ...
- 极客时间_Vue开发实战_05.Vue组件的核心概念(1):属性
05.Vue组件的核心概念(1):属性 代码地址: https://github.com/tangjinzhou/geektime-vue-1/blob/master/%E6%BC%94%E7%A4% ...