• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > MySQL中的常用工具的实例总结

MySQL中的常用工具的实例总结

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了MySQL,常用工具,总结等相关知识,希望本文的分享对您有所帮助
MySQL数据库以体积小、速度快、总体拥有成本低等优点,深受广大中小企业的喜爱,下面这篇文章主要给大家介绍了关于MySQL中常用工具的相关资料,需要的朋友们可以参考学习,下面来一起看看吧。

前言

本文主要给大家介绍了关于MySQL常用工具的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

一、mysql (客户端连接工具)

使用最频繁的连接数据库的客户端工具,使用语法如下:


mysql [options] [database]

这里的 options 表示 mysql 的可用选项,可以一次写一个或者多个,甚至可以不写;database 表示连接的数据库,一次只能写一个或者不写,如果不写,连接成功后需要用 “use database”命令来进入要操作的数据库。

1. 连接选项

选项的表达方式有多种,例如:


# 这三种方式都是可以的
shell> mysql -u root
shell> mysql -uroot
shell> mysql -user=root

1. 连接选项

  • -u, --user=name 指定用户名

  • -p, --password[=name] 指定密码

  • -h, --host=name 指定服务器 IP 或者域名

  • -P, --port=# 指定连接端口

一般在在本地环境,为了方便,可以在 配置文件 my.cnf 中配置当前用户和密码,配置好后,直接执行 mysql 就可以连接到数据库:


[client]
user=root
password=000000
port = 3306
socket = /tmp/mysql.sock
default-character-set = utf8mb4

配置好后,直接执行 mysql 即可:


zj@bogon:~$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 19
...

登录远程服务器,需要指定地址和端口:


shell> mysql -h 192.168.10.10 -P 3306 -uroot -p

注意: 在正式的生产环境中,为了安全起见,一般需要创建应用账号并赋予适当权限,而不会用 root 直接操作数据库;默认端口(3306)一般不要使用,可以改为任意操作系统未占用的端口。

2. 客户端字符集选项


--default-character-set=charset-name

作为服务器的字符集选项,这个选项也可以配置在 my.cnf 的 [mysqld] 组中。同样,作为客户端字符集选项,也可以配置在 my.cnf 的 [mysql]组中,这样每次用 mysql 工具连接数据库的时候就会自动使用此客户端字符集。当然,也可以在 mysql 的命令行中手工指定客户端字符集:


shell> mysql -u user -default-character-set=charset

相当于在 mysql 客户端连接成功后执行:


set names charset;

3. 执行选项


-e, --execute=name // 执行 sql 语句并退出

此选项可以直接在 MySQL 客户端执行 sql 语句,对于一些批处理脚本,这是方式尤其方便:


zj@bogon:~$ mysql mysql -e "select user,host from user"
+-----------+-----------+
| user | host |
+-----------+-----------+
| root | 127.0.0.1 |
| mysql.sys | localhost |
| root | localhost |
+-----------+-----------+

可以按这种方式连续执行多个 sql 语句,用英文分号(;)隔开。

4. 格式化选项

  • -E, --vertical 将输出方式按照字段顺序竖着显示

  • -s, --silent 去掉 mysql 中的线条框显示

“-E” 选项类似于 mysql 里面执行 sql 语句后加 “G”, 经常和 -e 一起使用。

二、myisampack (myisam 表压缩工具)

myisampack 是一个表压缩工具,可以使用很高的压缩率来对 myisam 存储引擎的表进行压缩,使得压缩后的表占用比压缩前小得多的空间。但是压缩后的表将成为一个只读表,不能进行 DML 操作。

三、mysqladmin(MySQL 管理工具)

mysqladmin 是一个执行管理操作的客户端程序。可以用它来检查服务器的配置和当前状态、创建并删除数据库等。它的功能与 mysql 客户端非常类似,主要区别在于它更侧重于一些管理方面的功能。

使用语法:


shell> mysqladmin [options] command [command-options]...

可以执行的命令如下:


 create databasename Create a new database 新建数据库
 debug  Instruct server to write debug information to log 把 debug 日志记录到日志文件中
 drop databasename Delete a database and all its tables 删除数据库
 extended-status Gives an extended status message from the server 查看 MySQL 服务器的状态信息
 flush-hosts Flush all cached hosts
 flush-logs Flush all logs
 flush-status Clear status variables
 flush-tables Flush all tables
 flush-threads Flush the thread cache
 flush-privileges Reload grant tables (same as reload)
 kill id,id,... Kill mysql threads
 password [new-password] Change old password to new-password in current format
 ping  Check if mysqld is alive
 processlist Show list of active threads in server
 reload  Reload grant tables
 refresh  Flush all tables and close and open logfiles
 shutdown  Take server down
 status  Gives a short status message from the server
 start-slave Start slave
 stop-slave Stop slave
 variables  Prints variables available
 version  Get version info from server

举例:


zj@bogon:/usr/local/mysql/bin$ mysqladmin -uroot -p shutdown
Enter password:

四、日志管理工具

由于服务器生成的二进制文件以二进制格式保存,所以如果想要检查这些文件的文本格式,就会用到 mysqlbinlog 日志管理工具。

用法如下:


shell> mysqlbinlog [option] log-file1 log-file2...

option 有很多选项:

  • -d,--database=name: 指定数据库名称,只列出指定的数据库相关操作。

  • -o, --offset=#: 忽略日志中的前 n 行命令。

  • -r, --result-file=name: 将输出的文本格式日志输出到指定文件

  • -s, --short-form: 显示简单格式,省略掉一些信息。

  • --start-datetime=name --stop-datetime=name: 指定日期间隔内的所有日志。

  • --start-position=# --stop-position=#: 指定位置间隔内的所有日志

1. 示例准备:创建新日志,新建库 t1 和 t2, 以及分别新建表 test1 和 test2


MySQL [(none)]> reset master;
Query OK, 0 rows affected (0.01 sec)

MySQL [(none)]> create table t1(id int,name varchar);
ERROR 1046 (3D000): No database selected
MySQL [(none)]> reset master;
Query OK, 0 rows affected (0.01 sec)

MySQL [(none)]> create database t1;
Query OK, 1 row affected (0.04 sec)

MySQL [(none)]> create database t2;
Query OK, 1 row affected (0.02 sec)

MySQL [(none)]> use t1;
Database changed
MySQL [t1]> create table test1(id int, name varchar(30));
Query OK, 0 rows affected (0.11 sec)

MySQL [t1]> insert into test1 value (1,'zj');
Query OK, 1 row affected (0.14 sec)

MySQL [t1]> insert into test1 value (2,'zj2');
Query OK, 1 row affected (0.02 sec)

MySQL [t1]> use t2;
Database changed
MySQL [t2]> create table test2(id int,name varchar(30));
Query OK, 0 rows affected (0.02 sec)

MySQL [t2]> insert into test2 select * from t1.test1;
Query OK, 2 rows affected (0.03 sec)
Records: 2 Duplicates: 0 Warnings: 0

MySQL [t2]> select * from t1.test1;
+------+------+
| id | name |
+------+------+
| 1 | zj |
| 2 | zj2 |
+------+------+
2 rows in set (0.02 sec)

MySQL [t2]> select * from test2;
+------+------+
| id | name |
+------+------+
| 1 | zj |
| 2 | zj2 |
+------+------+
2 rows in set (0.00 sec)

2. 不加任何参数,显示所有日志

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 分享下mysql各个主要版本之间的差异
  • MySQL essential版本和普通版本有什么区别?
  • redhat 5.4下安装MYSQL全过程
  • 如何用SQL命令查看Mysql数据库大小
  • 解析mysql中如何获得数据库的大小
  • 解析mysql修改为utf8后仍然有乱码的问题
  • 5个常用的MySQL数据库管理工具详细介绍
  • 解析在MySQL里创建外键时ERROR 1005的解决办法
  • 解析远程连接管理其他机器上的MYSQL数据库
  • mysql 精简过程(删除一些文件)

相关文章

  • 2017-05-11MySQL 性能优化的最佳20多条经验分享
  • 2018-12-05MariaDB(MySQL)创建、删除、选择及数据类型使用详解_MySQL
  • 2018-12-05详解MySQL临时表的功能及实例代码
  • 2018-12-05有关锁表问题的文章推荐4篇
  • 2018-12-05关于mysql中替代null的IFNULL()与COALESCE()函数详解
  • 2018-12-05比较全面的MySQL优化参考
  • 2018-12-05SQL Server 2000 清理日志精品图文教程
  • 2018-12-05oracle 存储过程和函数例子
  • 2018-12-05MySQL分布式集群之MyCAT(三)rule的详细分析(图文)
  • 2018-12-05MySQL中CHAR和VARCHAR类型演变和详解

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • MySQL基础入门操作命令的使用分析
    • 【MySQL 09】常用函数
    • MySQL之-提示"mysql deamon failed to start"错误的解决方法
    • mysql 查看版本的方法图文演示
    • 详细介绍centos编译安装mysql5.6及安装多个mysql的示例代码分享
    • mysql5.7.17在Windows10下安装配置方法的图文教程
    • 深入理解mysql SET NAMES和mysql(i)_set_charset的区别
    • MySQL找回用户数据的案例
    • 解决hibernate+mysql写入数据库乱码
    • 索引是什么?MySQL如何创建索引

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有