技术头条(投递你的文章)     搜索本站     邮件订阅     微信号:IT技术博客大学习
您现在的位置首页 --> MySQL
    sync_binlog=1 or N This makes MySQL synchronize the binary log’s contents to disk each time it commits a transaction 默认情况下,并不是每次写入时都将binlog与硬盘同步。因此如果操作系统或机器(不仅仅是MySQL服务器)崩溃,有可能binlog中最后的语句丢失了。要想防止这种情况,你可以使用sync_binlog全局变量(1是最安全的值,但也是最慢的),使binlog在每N次binlog写入后与硬盘同步。即使sync_binlog设置...
    开发库和线上表结构有很多不一样,分表个数也不同,我需要重新整理保持开发库和线上一致,之前已经告知开发数据是否允许丢失,开发说数据可以不要了,直接丢掉,等我搞好之后开发告诉我部分数据(ring)是不能删除的,我晕,只好想办法来恢复数据了,没有备份,不过还好有全部的binlog。1.根据binlog解析出所有ring数据库的所有sql[mysql@DEV_SNS1 log]$mysqlbinlog --no-defaults --database=ring --start-datetime="20...
    从来没有仔细写个Mysql的存储过程,正好花时间研究了一下。 写任何程序最基本的是先要有详细注释,有log记录,有异常异常等等,当然Mysql的异常处理机制很差,搞了半天都没有满意的结果。功能很简单,自动修改merge表的定义,并清理过期表的数据。DELIMITER $$DROP PROCEDURE IF EXISTS sp_rename_mergetable $$create procedure sp_rename_mergetable(in p_tablename varchar(60),in p_begincount int,in p_endcount int)B...
    同一条记录,开发发现主库的创建时间和备库的创建时间不一致,刚开始怀疑是系统时间的问题,想想又不对,mysql的binlog里面会打自己的时间戳,那是什么原因呢? 项灵刚(2009-03-26 13:51:31): http://jianghu.taobao.com/u/MjAzMzA4ODI=/poll/poll_detail-12011.htm 项灵刚(2009-03-26 13:51:40): 三胜的投票记录也有两个时间陶方(14:07:56): insert into poll_record_s (JOIN_RECORD_ID,PRO_USER_ID,POLL_ID,REC_USER_ID,G...
    这两天在对线上库进行初始化,需要导大量的数据到线上,使用Mysql的load data很容易实现。1.原始数据[mysql@DEV_SNS1 mysql]$ more 111.txt 2263,65025185,12263,61833350,22263,63713789,32263,28344254,42263,13134504,52580,59707749,12580,43,2....2.表结构如下root@test 10:53:27>desc tmp_dy;+-------+---------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+-------+--------...
    近几年web2.0的火爆,带动了Mysql的使用热潮,不管是小企业还是大网站,都有意无意的开始使用Mysql来搭建数据平台。传统网站随着业访问量,数据量的急剧膨胀,集中式的数据库也越来越成为瓶颈,很难做进一步的扩展,做读写分离,而这些都是Mysql的优势所在,容易扩展使Mysql渐渐成为了企业新的选择。 说到可扩展性,和app一样,当数据库压力上来时,只要通过不断增加数据库服务器来解决,尽量不去调整应用程序,服务器硬...
    对于大批量过期的数据,Mysql中应该如何清理呢?项目环境:1.分表,可能会分成256张表,512张表等2.每个子表每天过期(超过3个月数据就算过期)的数据可能会超过100万,如何清理?暂时只想到批量循环删除,一直到返回结果为0,DELETE FROM table WHERE gmt_create>trunc(sysdate-90) LIMIT 10000,同时还要考虑时间索引右倾的情况,大家都应该知道,mysql重建索引是很麻烦的,要锁表。 欢迎提供不影响业务的情况下,更有效删除M...
    .frm文件用来保持表和列的定义,表的索引和数据可能被存储在一个或多个文件里,这取决于表的类型。因为.frm里面只是保留表的定义,万一损坏的话恢复起来很简单的,只要在另外的库中重建个一模一样的表,然后copy .frm文件过来就可以了。 这篇文章不错:http://www.mysqlperformanceblog.com/2008/12/17/recovering-create-table-statement-from-frm-file/
    Mysql 5.0 推出来的一个功能,在我看来和oracle差不多的,语法上稍微有一点点不同,下面写了一个例子模板,大家用到时可以很容易套用。 mysql> delimiter // --语句结束符更改为// --定义存储过程mysql>create procedure ptest(out return_val int)begindeclare a1 ,b1 int default 5; --定义变量declare cur1 cursor for select a from test; --定义游标declare exit handler for not found begin insert into test_error(m...
    alter table运行时会对原表进行临时复制,在副本上进行更改,然后删除原表,再对新表进行重命名。在执行alter table时,其它用户可以阅读原表,但是对表的更新和修改的操作将被延迟,直到新表生成为止。新表生成后,这些更新和修改信息会自动转移到新表上。注意,如果您在执行alter table时使用除了rename以外的选项,则MySQL会创建一个临时表。即使数据并不需要进行复制(例如当您更改列的名称时),MySQL也会这么操作。对于Myisa...
    mysql> use test;Database changedmysql> select count(*) from test;+----------+| count(*) |+----------+| 2097152 |+----------+1 row in set (0.00 sec)mysql> select * from test ORDER BY RAND() LIMIT 1;+--------+------+| a | b |+--------+------+| 765909 | |+--------+------+1 row in set (8.78 sec) --用了将近9s 引Mysql文档:You cannot use a column with RAND() values in an ORDER BY ...
    排序也就是我们说的order by,Mysql更强调的是把排序字段也放在索引中,不需要回表,这是理想的实现方式,如果通过索引没有办法获得有序的数据,MySQL通过将取得的数据在内存中进行排序然后再将数据返回给客户端,有两种排序算法:一种是首先根据相应的条件取出相应的排序字段和定位行数据的行指针信息,然后在 sort buffer 中进行排序,最后根据排序结果回表取出需要的字段返回给客户端。另一种排序是在排序时就直接取出需...
    MySQL需要额外的一次传递,以找出如何按排序顺序检索行,通过根据联接类型浏览所有行并为所有匹配WHERE子句的行保存排序关键字和行的指针来完成排序,然后关键字被排序,并按排序顺序检索行(引文档)。 额外的传递是指什么,反正每回不管看英文还是中文myql文档都是晕乎乎的。mysql> show create table test_filesort\\G;*************************** 1. row *************************** Table: test_filesortCre...
    --返回当前时间mysql> select curdate(),curtime(),now(),DATE(now()),sysdate();+------------+-----------+---------------------+-------------+---------------------+| curdate() | curtime() | now() | DATE(now()) | sysdate() |+------------+-----------+---------------------+-------------+---------------------+| 2008-12-02 | 10:11:36 | 2008-12-02 10:11:36 | 2008-12-02 | 2008-1...
    每个session使用的内存:Each thread that is used to manage client connections uses some thread-specific space. The following list indicates these and which variables control their size: A stack (default 192KB, variable thread_stack) A connection buffer (variable net_buffer_length) A result buffer (variable net_buffer_length) The connection buffer and result buffer both begin with a size ...
    [root@sql21 ~]# mysql -u rootWelcome to the MySQL monitor. Commands end with ; or \\g.Your MySQL connection id is 3 to server version: 5.1.26-rc-logType \'help;\' or \'\\h\' for help. Type \'\\c\' to clear the buffer.mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || test |+--------------------+3 r...
        要将Oracle数据库中的大量数据迁移到MySQL中, 用SQLULDR2生成格式化文本文件, 然后用mysqlimport来导入到目标库, 是一个高效免费的方案. 最近正好有这样的一个数据迁移需求, 并做了一些测试, 速度很不错, 但MySQL对于空值(NULL)的处理有些特殊, 在以前的SQLULDR2中, 空值输出成空的字符串, 如下所示. ICOL$,TABLE,4 CON$,TABLE, UNDO$,TABLE, C_COBJ#,CLUSTER, PROXY_ROLE_DATA$,TABLE, ......     ...
[共517篇文章][第26页/共26页][|<][17][18][19][20][21][22][23][24][25][26]
© 2009 - 2017 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号