MySql

mysql获取插入ID

在MySQL中,使用auto_increment类型的id字段作为表的主键。通常的做法,是通过“selectmax(id)fromtablename”的做法,但是显然这种做法需要考虑并发的情况,需要在事务中对主表以“X锁“,待获得max(id)的值以后,再解锁。这种做法需要的步骤比较多,有些麻烦,而且并发性也不好。有没有更简单的做法呢?答案之一是通过selectLAST_INSERT_ID()这个操作。乍一看,它和selectmax(id)很象,但实际上它

系统 2019-08-12 01:55:16 2392

MySql

[zz]安装mysql 获得 mysql.h 建立C接口

先安装mysql代码:sudoapt-getinstallmysql-servermysql-client再装开发包代码:sudoapt-getinstalllibmysqlclient15-dev安装完以后,C代码里添加头文件代码:#include编译方法:代码:gcc$(mysql_config--cflags)xxx.c-oxxx$(mysql_config--libs)可以用以下代码测试一下代码:/*SimpleCprogramt

系统 2019-08-12 01:52:17 2389

MySql

mysql-merge合并表

merge表注意:1每个子表的结构必须一致,主表和子表的结构需要一致,2每个子表的索引在merge表中都会存在,所以在merge表中不能根据该索引进行唯一性检索。3子表需要是MyISAM引擎4AUTO_INCREMENT不会按照你所期望的方式工作。建表语句createtabletablename(正常的字段)engine=mergeinsert_method=lastinsert_method:有两个值如下:LAST如果你执行insert指令来操作merg

系统 2019-08-12 01:55:30 2387

MySql

mysql初识之数据文件及其他文件

在mysql中数据文件存放于在my.cnf中datadir指定的路径,使用的表引擎不同产生的文件格式、表文件个数也会有所差异。mysql的表引擎有多种,表的扩展名也不一样,如innodb用“.ibd”,archive用“.arc”,csv用“.csv”等。myisam表引擎myisam表会产生三个文件:MYI、MYD、frm文件frm文件:主要存放表的元数据(meta),包括表结构定义信息等。不论是哪个表引擎都会有一个frm文件,存放在数据库的数据目录下。

系统 2019-08-12 01:54:46 2387

MySql

sql点滴42—mysql中的时间转换

原文:sql点滴42—mysql中的时间转换UNIX时间戳转换为日期用函数:FROM_UNIXTIME()selectFROM_UNIXTIME(1156219870);日期转换为UNIX时间戳用函数:UNIX_TIMESTAMP()SelectUNIX_TIMESTAMP(’2006-11-0412:23:00′);例:mysql查询当天的记录数:$sql=”select*frommessageWhereDATE_FORMAT(FROM_UNIXTIME

系统 2019-08-12 01:32:33 2387

MySql

Amoeba For MySQL入门:实现数据库水平切分

当系统数据量发展到一定程度后,往往需要进行数据库的垂直切分和水平切分,以实现负载均衡和性能提升,而数据切分后随之会带来多数据源整合等等问题。如果仅仅从应用程序的角度去解决这类问题,无疑会加重应用程度的复杂度,因此需要一个成熟的第三方解决方案。Amoeba正是解决此类问题的一个开源方案,Amoeba位于应用程序和数据库服务器之间,相当于提供了一个代理,使得应用程序只要连接一个Amoeba,相当于只是在操作一个单独的数据库服务器,而实际上却是在操作多个数据库服

系统 2019-08-12 01:32:33 2386

MySql

mysql索引优化

原文:mysql索引优化mysql大数据分页和索引使用使用覆盖索引一个表建立在id,create_time上建立了索引。如下2个sql语句,执行时间一样。因为查询字段id被索引覆盖。selectidfromorder_managewherecreate_time>'2014-01-01'orderbycreate_timedesclimit100000,10selecta.idfromorder_manageainnerjoin(selectidfromo

系统 2019-08-12 01:52:23 2385

MySql

php从memcache读取数据再批量写入mysql的方法

这篇文章主要介绍了php从memcache读取数据再批量写入mysql的方法,可利用memcache缓解服务器读写压力,并实现数据库数据的写入操作,非常具有实用价值,需要的朋友可以参考下.用Memcache可以缓解php和数据库压力下面代码是解决高负载下数据库写入瓶颈问题,遇到最实用的:写入ippvuv的时候,用户达到每分钟几万访问量,要记录这些数据,实时写入数据库必定奔溃.用以下技术就能解决,还有如用户注册,同一时间断内,大量用户注册,可以缓存后一次性写

系统 2019-08-12 09:27:27 2383

MySql

mysql数据库的备份与还原

MySQL备份和还原,都是利用mysqldump、mysql和source命令来完成的1.备份[root@localhost~]#cd/var/lib/mysql(进入到MySQL库目录,根据自己的MySQL的安装情况调整目录)[root@localhostmysql]#mysqldump-uroot-pMovie>Movie.sql,输入密码即可。2.还原法一:[root@localhost~]#mysql-uroot-p回车,输入密码,进入MySQL的

系统 2019-08-12 01:55:12 2383

MySql

mysql优化20条原则

今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1.为查询缓存优化你的查询大多数的MySQL服务器都开启了查询缓存。这是提高

系统 2019-08-12 01:52:59 2383

MySql

【原】MySQL建立索引

索引是一种特殊的数据结构,可以用来快速查询数据库的特定记录,建立是一中提高数据库性能的重要方式。内容:索引的意义,索引的设计,创建和删除索引简介索引是建立在表上的,有一列或者多列组成,并对这一列或者多列进行排序的一种结构。所有存储引擎对每个表至少支持16个索引,总索引长度至少为256字节,索引有两种存储类型,包括B型树索引和哈希索引。索引的优点是可以提高检索的速度,但是创建和维护索引需要耗费时间,这个时间随着数据量的增加而增加。索引可以提高查询的速度,但是

系统 2019-08-12 01:33:07 2383

MySql

Centos下找回mysql登陆密码

1,停止MYSQL服务,CMD打开DOS窗口,输入netstopmysql--(netstartmysql)2,在CMD命令行窗口,进入MYSQL安装目录比如E:\ProgramFiles\MySQL\MySQLServer5.1\bin3,进入mysql安全模式,即当mysql起来后,不用输入密码就能进入数据库。命令为:mysqld-nt--skip-grant-tables***************************************4

系统 2019-08-29 23:31:34 2382

MySql

MySQL中游标使用以及读取文本数据

原文:MySQL中游标使用以及读取文本数据前言之前一直没有接触数据库的学习,只是本科时候修了一本数据库基本知识的课。当时只对C++感兴趣,天真的认为其它的课都没有用,数据库也是半懂不懂,胡乱就考试过了。现在学习大数据分析,接触了数据挖掘,才感觉到数据库是不可跨越的坎。直到现在才感觉到《操作系统》、《编译原理》、《计算机组成原理》等等课程的重要性。在浩瀚的知识面前,个人是非常渺小的。掌握了一种思想之后,任何事情都不困难,困难的是你是否真的静下心看一看帮助文档

系统 2019-08-12 01:53:27 2382

MySql

MySQL性能、监控与灾难恢复

原文:MySQL性能、监控与灾难恢复监控方案:up.timehttp://www.uptimesoftware.com/收费Cactihttp://www.cacti.net/KDESystemGuard(KSysGuard)http://docs.kde.org/stable/en/kdebase-workspace/ksysguard/index.htmlGnomeSystemMonitorhttp://library.gnome.org/users/

系统 2019-08-12 01:53:10 2381