日志标签:mysql

Zabbix 3.2 agentd使用自带模板监控MySQL性能

分类:运维技术日期:2018-06-11 - 20:58:49评论:0条作者:老谢

MySQL基础监控

  通过SHOW STATUS 可以提供服务器状态信息,也可以使用mysqladmin extendedstatus 命令获得。

以下几个参数对Myisam 和Innodb 存储引擎都计数:

  • Com_select 执行select 操作的次数,一次查询只累加1
  • Com_insert 执行insert 操作的次数,对于批量插入的insert 操作,只累加一次
  • Com_update 执行update 操作的次数
  • Com_delete 执行delete 操作的次数

以下几个参数是针对Innodb 存储引擎计数的:

  • Innodb_rows_read select 查询返回的行数
  • Innodb_rows_inserted 执行Insert 操作插入的行数
  • Innodb_rows_updated 执行update 操作更新的行数
  • Innodb_rows_deleted 执行delete 操作删除的行数

  通过以上几个参数,可以很容易的了解当前数据库的应用是以插入更新为主还是以查询操作为主,以及各种类型的SQL 大致的执行比例是多少。对于更新操作的计数,是对执行次数的计数,不论提交还是回滚都会累加。对于事务型的应用,通过Com_commit 和Com_rollback 可以了解事务提交和回滚的情况,对于回滚操作非常频繁的数据库,可能应用编写存在问题。

另外还有几个参数可以了解数据库的基本信息:

  • Connections 试图连接Mysql 服务器的次数
  • Uptime 服务器工作时间
  • Slow_queries 慢查询的次数

继续阅读…

Tags: ,

使用implode()函数将数组逗号隔开连接为字符串

分类:程序设计日期:2016-01-02 - 14:43:59评论:0条作者:老谢

  checkbox提交过来一个数组,为了将数组中的值插入到SQL语句执行,需要将数组的键值使用逗号隔开:

index.html
<form action="2.php" method="post">
<input name="select[]" type="checkbox" value="1" />1
<input name="select[]" type="checkbox" value="2" />2
<input name="select[]" type="checkbox" value="3" />3
<input type="submit" value="submie" />
</form>
2.php
<?php
	$array = $_POST["select"];
	$select = implode(",", $array);
	echo $select;
?>

  3个checkbox全都选择提交后,输出的结果为:1,2,3,可以直接插入到SQL语句执行。

Tags: ,

MySQL替换指定字段中的字符串

分类:程序设计日期:2015-12-05 - 22:05:00评论:3条作者:老谢

最近一个项目反复要改数据库,一直手动改,由于改的太过频繁实在受不了,字段替换的语句如下:

UPDATE 表名 SET 字段名 = REPLACE (字段名, '将要被替换的内容', '想要替换成的内容');

当然还可以加上条件:

UPDATE 表名 SET 字段名 = REPLACE (字段名, '将要被替换的内容', '想要替换成的内容') WHERE id<99;
Tags:

Navicat导出APMServ MySQL数据库1577错误

分类:运维技术日期:2013-07-25 - 9:31:29评论:2条作者:老谢

首先下载MySQL:http://jaist.dl.sourceforge.net/project/mysql.mirror/MySQL%205.6.11/mysql-5.6.11-win32.zip

把bin目录的mysql_upgrade.exe和mysqlcheck.exe解压出来,放到D:\APMServ5.2.6\MySQL5.1\bin下,然后执行下面的命令:

D:\APMServ5.2.6\MySQL5.1\bin\mysql_upgrade.exe -u root -p

Navicat导出APMServ MySQL数据库1577错误

等待命令执行完毕,升级完系统表结构后,重启MySQL后导出数据库正常

Tags: ,

phpMyAdmin2.11.11.3安装方法

分类:运维技术日期:2012-03-22 - 20:37:26评论:0条作者:老谢

phpMyAdmin3.x的版本都需要php5.2以上版本的支持,由于直接使用yum安装,php版本为5.1.6,只能选择2.x版本的phpmyadmin,但是似乎与3.x的不同,无法直接访问到登录页面,于是搜索一圈,按照下面的方法,解决了问题:

cp config.sample.inc.php config.inc.php
vim config.inc.php

编辑为:

$cfg[‘blowfish_secret’] = ‘cookie’;
$cfg[‘Servers’][$i][‘controluser’] = ‘root’;
$cfg[‘Servers’][$i][‘controlpass’] = ‘123456’;

phpmyadmin导入mysql遇到#1065 – Query was empty

分类:运维技术日期:2012-03-15 - 11:49:18评论:11条作者:老谢

一位客户把在我们美国主机的公司的网站搬家到了国内,搬家遇到了问题,国内主机商这边似乎找不着人,于是乎客户找着了我们,问题跟我描述以后,发现是数据库导入有问题,于是答应客户帮他导入一遍数据库,但是导入数据库遇到了如下错误:

错误 SQL 查询:

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;

MySQL 返回:

#1065 – Query was empty

看到错误,老谢瞬间蛋痛了,网上搜一圈也没找#1065啥意思,但是想到我们美国主机的数据库版本是5.1.61,国内是5.0.81,可能就是由于版本问题导致的,或许也跟phpmyadmin的版本有关,我们美国主机的phpmyadmin版本是3.4.9,国内的phpmyadmin居然还是2.7.0-pl1,再次蛋痛。。至于到底啥原因导致的错误,老谢也布吉岛,如果您知道,欢迎留言解惑,祭出谷歌大神,开始搜吧。。。

找到了一篇#1065 – Query was empty 的解决办法,按照这篇教程描述的办法,操作失败,面板提示我1分钟后执行操作,等了十几分钟尼玛数据库还是空的,又尝试了一遍,还是不行,无奈,另辟他径吧!

由于是国内的windows主机,突然想到应该是可以远程访问数据库的,如果可以就好办了,于是乎再祭出一尊大神navicat,输入服务器ip以及用户名、密码,连接,还真丫连接上了,于是就开始尝试导入数据库,嗯,还真丫导入进去了。。再进入国内的phpmyadmin查看数据库表,恩恩,无问题。。

navicat导入sql文件的操作方法如下:

phpmyadmin导入mysql遇到#1065 – Query was empty

Mysql清理日志文件

分类:运维技术日期:2012-02-25 - 23:12:45评论:16条作者:老谢

Mysql运行中,默认会生成日志,这是众所周知的,而且网上很多网友反映硬盘空间不足了,最后检查都是被mysql的日志占掉了大量的空间,对于这些日志文件,我们应该如何清理呢?

Putty
[root@xj123 data]# ls
micro mysql-bin.000002 mysql-bin.000005 wp
mysql mysql-bin.000003 mysql-bin.index xj123.info.err
mysql-bin.000001 mysql-bin.000004 mysql-bin.000005 xj123.info.pi

[root@xj123 data]# du ./ -h
18M ./wp
168K ./micro
988K ./mysql
120M ./

继续阅读…

CentOS安装MySQL支持远程连接的方法

分类:运维技术日期:2012-02-17 - 21:46:30评论:6条作者:老谢

背景:老谢目前有一个项目,需要用到远程mysql数据库,本文以最简单的方式介绍如何配置远程访问

mysql -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'passwd' WITH GRANT OPTION;
flush privileges;

继续阅读…