美文网首页MySQL
MySQL管理工具mysqladmin的使用

MySQL管理工具mysqladmin的使用

作者: think_lonely | 来源:发表于2017-05-08 21:46 被阅读0次

    mysqladmin是经常使用的命令,一般用在需要从mysql执行一次命令获取想要的信息,常见于脚本中使用

    # 使用格式:mysqladmin [options] command [arg] [,command [arg]] …

    # 常用的command包括:

    create DB_Name:# 创建数据库

    drop DB_Name:# 删除数据库

    debug:# 打开调试日志并记录于error log中

    status:# 显示简要状态信息

    --sleep#:设置间隔时长

    --count#:设置显示的批次

    extended-status:# 显示扩展信息,输出mysqld的各状态变量及赋值,相当于执行“mysql> show global status”

    variables:# 输出mysqld的各服务器变量

    flush-hosts:# 清空主机相关的缓存:DNS解析缓存;此前因为连接错误次数过多而被拒绝访问mysqld的主机列表

    flush-logs:# 日志滚动,只能滚动二进制日志和中继日志

    refresh:# 相当于同时使用flush-hosts和flush-logs

    flush-privileges:# 通知mysqld重读授权表

    reload:# 功能同“flush-privileges”

    flush-status:# 重置状态变量的值

    flush-tables:# 关闭当前打开的表文件句柄

    flush-threads:# 清空线程缓存

    kill:# 杀死指定的线程,需指定线程ID;可以一次杀死多个线程,以逗号分隔,但不能有多余空格

    password:# 修改当前用户的密码

    ping:# 模拟ping操作,检测mysqld是否在线

    processlist:# 显示mysqld线程列表

    shutdown:# 关闭mysqld进程

    start-slave,stop-slave:# 启动/关闭从服务器线程

    mysqladmin 工具的使用格式:

    mysqladmin [option] command [command option] command ......

    option 选项:

    -c number 自动运行次数统计,必须和 -i 一起使用

    -i number 间隔多长时间重复执行

    每个两秒查看一次服务器的状态,总共重复5次。

    ./mysqladmin -uroot -p -i 2 -c 5 status

    -#, --debug[=name] Output debug log. Often this is 'd:t:o,filename'.

    -f, --force Don't ask for confirmation on drop database; with

    multiple commands, continue even if an error occurs. 禁用错误,drop 数据库时不提示,执行多条命令时出错继续执行

    -C, --compress Use compression in server/client protocol.

    --character-sets-dir=name 字符集所在目录

    Directory where character sets are.

    --default-character-set=name 设置默认字符集

    Set the default character set.

    -?, --help Display this help and exit. 显示帮助

    -h, --host=name Connect to host. 连接的主机名或iP

    -p, --password[=name] 登录密码,如果不写于参数后,则会提示输入

    Password to use when connecting to server. If password is

    not given it's asked from the tty.

    -P, --port=# Port number to use for connection. 指定数据库端口

    --protocol=name The protocol of connection (tcp,socket,pipe,memory). 指定连接协议

    -r, --relative Show difference between current and previous values when

    used with -i. Currently works only with extended-status. 显示前后变化的值,必须结合- i

    ./mysqladmin -uroot -p -i 2 -r extended-status

    假如此处显示的uptime 将永远是2,因为与之前取的结果比只相差2.

    -O, --set-variable=name

    Change the value of a variable. Please note that this

    option is deprecated; you can set variables directly with

    --variable-name=value.修改变量的值,该选项已经不再使用,请使用--variable-name=value 的方式修改变量值

    -s, --silent Silently exit if one can't connect to server.

    -S, --socket=name Socket file to use for connection. 指定socket file

    -i, --sleep=# Execute commands again and again with a sleep between. 间隔一段时间执行一次

    -u, --user=name User for login if not current user.登录数据库用户名

    -v, --verbose Write more information. 写更多的信息

    -V, --version Output version information and exit. 显示版本

    ./mysql -uroot -p -V

    -E, --vertical Print output vertically. Is similar to --relative, but

    prints output vertically.

    -w, --wait[=#] Wait and retry if connection is down. 如果连接断开,等待w 指定的时间后重试

    --connect_timeout=#

    --shutdown_timeout=#

    1、查看服务器的状况:status

    ./mysql -uroot -p status

    显示结果:

    Uptime: 4883162 Threads: 1 Questions: 86 Slow queries: 0 Opens: 0 Flush tables: 1 Open tables: 18 Queries per second avg: 0.000

    2.修改root 密码:

    mysqladmin -u root -poldpassword password 'newpassword'

    3.检查mysqlserver是否可用:

    mysqladmin -uroot -p ping

    显示结果:

    mysqld is alive

    4.查询服务器的版本

    mysqladmin -uroot -p version

    5.查看服务器状态的当前值:

    mysqladmin -uroot -p extended-status

    显示结果:

    +-----------------------------------+----------+

    | Variable_name | Value |

    +-----------------------------------+----------+

    | Aborted_clients | 12 |

    | Aborted_connects | 300 |

    | Binlog_cache_disk_use | 0 |

    | Binlog_cache_use | 0 |

    | Bytes_received | 23608 |

    | .......

    |Threads_created | 3 |

    | Threads_running | 1 |

    | Uptime | 4884294 |

    +-----------------------------------+----------+

    6.查询服务器系统变量值:

    mysqladmin -uroot -p variables

    显示结果:

    +---------------------------------+----------------------------------------+

    | Variable_name | Value |

    +---------------------------------+----------------------------------------+

    | auto_increment_increment | 1 |

    | auto_increment_offset | 1 |

    | automatic_sp_privileges | ON |

    | back_log | 50 |

    | basedir | /usr/local/mysql/ |

    ..

    7.显示服务器所有运行的进程:

    mysqladmin -uroot -p processlist

    mysqladmin -uroot -p-i 1 processlist 每秒刷新一次

    显示结果:

    +-----+------+-----------+----+---------+------+-------+------------------+

    | Id | User | Host | db | Command | Time | State | Info |

    +-----+------+-----------+----+---------+------+-------+------------------+

    | 331 | root | localhost | | Query | 0 | | show processlist |

    +-----+------+-----------+----+---------+------+-------+------------------+

    8.创建数据库

    ./mysqladmin -uroot -p create daba-test

    验证:

    ./mysql -uroot -p 登录后:show databases;

    9.显示服务器上的所有数据库

    ./mysqlshow -uroot -p

    10.显示数据库daba-test下有些什么表:

    ./mysqlshow -uroot -p daba-test

    11.统计daba-test 下数据库表列的汇总

    ./mysqlshow -uroot -p daba-test -v

    12.统计daba-test 下数据库表的列数和行数

    ./mysqlshow -uroot -p daba-test -v -v

    13. 删除数据库 daba-test

    ./mysqladmin -uroot -p drop daba-test

    14. 重载权限信息

    ./mysqladmin -uroot -p reload

    15.刷新所有表缓存,并关闭和打开log

    ./mysqladmin -uroot -p refresh

    16.使用安全模式关闭数据库

    ./mysqladmin -uroot -p shutdown

    You can also use “/etc/rc.d/init.d/mysqld stop” to shutdown the server. To start the server, execute “/etc/rc.d/init.d/mysql start”--如果不是以服务来运行则这两条命令无效

    17.mysqladmin flush commands

    # mysqladmin -u root -ptmppassword flush-hosts

    # mysqladmin -u root -ptmppassword flush-logs

    # mysqladmin -u root -ptmppassword flush-privileges

    # mysqladmin -u root -ptmppassword flush-status

    # mysqladmin -u root -ptmppassword flush-tables

    # mysqladmin -u root -ptmppassword flush-threads

    •flush-hosts: Flush all information in the host cache.

    •flush-privileges: Reload the grant tables (same as reload).

    •flush-status: Clear status variables.

    •flush-threads: Flush the thread cache.

    18 .mysqladmin 执行kill 进程:

    ./mysqladmin -uroot -p processlist

    ./mysqladmin -uroot -p kill idnum

    19.停止和启动MySQL replication on a slave server

    mysqladmin -u root -p stop-slave

    mysqladmin -u root -p start-slave

    20 .同时执行多个命令

    mysqladmin -u root -p process status version

    相关文章

      网友评论

        本文标题:MySQL管理工具mysqladmin的使用

        本文链接:https://www.haomeiwen.com/subject/dwpvtxtx.html