Mysql

关于mysql innodb count(*)速度慢的解决办法

innodb引擎在统计方面和myisam是不同的,Myisam内置了一个计数器,所以在使用 select count(*) from table 的时候,直接可以从计数器中取出数据。而innodb必须全表扫描一次方能得到总的数量。要初步解决这个问题,需要做不同于myisam的一些工作:

1、使用第二索引(一般不使用主键索引),并且添加where条件,如:
select count(*) from product where comp_id>=0 ;

show index from product ;
id primary key
comp_id index…

        

php连接MySQL数据库代码(原创)

<?php
//MySQL连接数据库
function db_connmysql($dbpassword,$dbdatabase,$dbhost='localhost',$dbname='root',$dbcharset='UTF8'){
$link = mysql_connect($dbhost, $dbname, $dbpassword) or die(mysql_error());
$dbVersion = mysql_get_server_info($link);
//设置字符集
mysql_set_charset($dbcharset,$link);
//mysql_query("SET NAMES gb2312", $link);此方式不推荐;
//设置 sql_model
if($dbVersion >'5.0.1'){
mysql_query("SET sql_mode=''",$link);
mysql_query("SET character_set_connection=".$dbcharset.", character_set_results=".$dbcharset.", character_set_client=binary", $link);// 防止宽字节注入
}
//选择数据库
mysql_select_db($dbdatabase, $link);
//mysql_close($link);

}

//db_connmysql('password','test');
        

MySQL 的数据类型和建库策略

无论是在小得可怜的免费数据库空间或是大型电子商务网站,合理的设计表结构、充分利用空间是十分必要的。这就要求我们对数据库系统的常用数据类型有充分的认识。下面我就将我的一点心得写出来跟大家分享。

      一、数字类型

      数字类型按照我的分类方法分为三类:整数类、小数类和数字类。…

    

PHP开发者常犯的11个MySQL错误

数据库是Web大多数应用开发的基础。如果你是用PHP,那么大多数据库用的是MySQL也是LAMP架构的重要部分。PHP看起来很简单,一个初学者也可以几个小时内就能开始写函数了。但是建立一个稳定、可靠的数据库确需要时间和经验。下面就是一些这样的经验,不仅仅是MYSQL,其他数据库也一样可以参考。

1.使用MyISAM而不是InnoDB
MySQL有很多的数据库引擎,单一般也就用MyISAM和InnoDB。

    

实现Linux中Mysql数据库自动备份并上传到远程FTP服务器

这篇文章很有分享价值,因为我们在实际的生产环境中需要将数据库进行自动备份,然后上传到指定的位置,当然也可以像以下文章中所讲的一样,上传到你指定的FTP服务器中,从而实现Mysql数据库自动备份并上传到远程FTP服务器的部署,在Linux技术交流群中,也有朋友会遇到这方面的问题,可以将此文分享给群友共益。

注意:任何的操作都会具有风险性,请在本机实际测试通过之后再部署到服务器环境,这样即熟练的掌握了操作的技巧,也能在测试过程中发现问题,寻找解决方法。…

        

mysql的字符集与校验规则概念小介

刚刚接触mysql的人(like me),可能对这2个概念不是太理解,这里小小解释一下,希望能说明清楚这个问题。

    字符集,character set,就是一套表示字符的符号和这些的符号的底层编码;而校验规则,则是在字符集内用于比较字符的一套规则。字符集还是比较容易理解的,主要是校验规则,下面我简单举个例子来说明一下:…

优化 MySQL 语句的十个建议

Jaslabs的Justin Silverton列出了十条有关优化MySQL查询的语句,我不得不对此发表言论,因为这个清单非常非常糟糕。另外一个Mike也同样意识到了。所以在这个博客中,我要做两件事情,第一,指出为什么这个清单很糟糕,第二,列出我的清单,希望我的比较好些。继续看吧,无畏的读者们!

(译者注:作者借这个题目反讽另一篇同名的文章)

为什么那个清单很糟糕…

    

用批处理对MySQL进行数据操作

批处理是一种非交互式运行mysql程序的方法,如同您在mysql中使用的命令一样,你仍然将使用这些命令。
为了实现批处理,您重定向一个文件到mysql程序中,首先我们需要一个文本文件,这个文本文件包含有与我们在mysql中输入的命令相同的文本。

比如我们要插入一些数据,使用包含下面文本的文件(文件名为New_Data.sql,当然我们也可以取名为New_Data.txt及任何其他的合法名字,并不一定要以后缀sql结尾):
USE Meet_A_Geek; …

一个备份MySQL数据库的简单Shell脚本

本文翻译自 iSystemAdmin 的 《A Simple Shell Script to Backup MySQL Database

Shell脚本是我们写不同类型命令的一种脚本,这些命令在这一个文件中就可以执行。我们也可以逐一敲入命令手动执行。如果我们要使用shell脚本就必须在一开始把这些命令写到一个文本文件中,以后就可以随意反复运行这些命令了。

我首先要在本文带给你的是完整脚本。后面会对该脚本做说明。我假定你已经知道shell scripting、 mysqldump和crontab。