问题:
用shell写一个脚本用来监控mysql进程运行状态测试一下能不能连上mysql不能的话则发邮件报警至于怎么监控其实有很多命令比如大部分在mysql/bin目录下的命令都可以用来测试mysql进程的运行状态只要挂掉了则命令就会返回错误
mysqladmin如何创建新表!
用于执行管理性操作语法是
shell>; mysqladmin [OPTIONS] command [commandoption] command
通过执行mysqladmin help你可以得到你mysqladmin的版本所支持的一个选项列表
目前mysqladmin支持下列命令
create databasename 创建一个新数据库
drop databasename 删除一个数据库及其所有表
extendedstatus 给出服务器的一个扩展状态消息
flushhosts 洗掉所有缓存的主机
flushlogs 洗掉所有日志
flushtables 洗掉所有表
flushprivileges 再次装载授权表(同reload)
kill idid 杀死mysql线程
password 新口令将老口令改为新口令
ping 检查mysqld是否活着
processlist 显示服务其中活跃线程列表
reload 重载授权表
refresh 洗掉所有表并关闭和打开日志文件
shutdown 关掉服务器
status 给出服务器的简短状态消息
variables 打印出可用变量
version 得到服务器的版本信息
所有命令可以被缩短为其唯一的前缀例如
shell>; mysqladminprocstat
+++++++++
| Id|User|Host|db|Command|Time|State|Info|
+++++++++
| |monty|localhost||Processlist||||
+++++++++
Uptime: Threads:Questions:Slowqueries:Opens:Flushtables:
Open tables:Memoryinuse:KMaxmemoryused:K
mysqladmin status命令结果有下述列
Uptime MySQL服务器已经运行的秒数
Threads 活跃线程(客户)的数量
Questions 从mysqld启动起来自客户问题的数量
Slow queries 已经超过long_query_time秒的查询数量
Opens mysqld已经打开了多少表
Flush tables flush refresh和reload命令数量
Open tables 现在被打开的表数量
Memory in use 由mysqld代码直接分配的内存(只有在MySQL用withdebug编译时可用)
Max memory used 由mysqld代码直接分配的最大内存(只有在MySQL用withdebug编译时可用)
主要是管理 不是使用 使用的话直接进入mysql create table
也可以mysqldmin create database
/***sql(这里面是导出或者自己写的语句)
不过在myssql官方手册上有很详细的介绍