表示 进入内容 139411395015677
« 先前的 10 新的记录 | 下一步 10 较早的记录 »
[MySQL FAQ]系列 — 如何将两个表名对调

问题 有位同学问我,在类似pt-osc场景下,需要将两个表名对调,怎么才能确保万无一失呢? 分析 估计其他同学就笑了,表名对掉还不简单吗,相互RENAME一下嘛。

但是,我们想要的是同时完成表名对调,如果是先后的对掉,可能会导致有些数据写入失败,那怎么办?

 

其实也不难,从MySQL手册里就能找到方法,那就是:同时锁定2个表,不允许写入,然后对调表名。

我们通常只锁一个表,那么同时锁两个表应该怎么做呢,可以用下面的方法:

LOCK TABLES t1 WRITE, t2 WRITE;
ALTER TABLE t1 RENAME TO t3;
ALTER TABLE t2 RENAME TO t1;
ALTER TABLE t3 RENAME TO t2;
UNLOCK TABLES;

看到了吧,其实很简单,两个表同时加表级写锁,然后用ALTER语法改名就可以了。

废话挺多的,谢谢各位客官耐心看完 :)

[获取更多]
主从一致性检查和修复

说明: 主: 192.168.1.96 从: 192.168.1.68 基本步骤 1.授权主从一致性检查和同步 […]

在 CentOS 6.4 上安装 CloudStack 4.2

在 CentOS 6.4上安装CloudStack 4.2 原文路径:http://www.vpsee.com/2013/11/install-cloudstack-4-2-on-centos-6-4/ 和 OpenStack,OpenNebula 类似,CloudStack 是另一款开源云计算平台。CloudStack的前身是 Cloud.com 家的一款商业云计算产品(也有开

【mysql】  【防火墙】  【http】  【yum】  【配置】  【centos】   …

[获取更多]
POCO C++ lib开发环境构建

Welcome   Thank you for downloading the POCO C++ Libraries and welcome to the growing community of POCO C++ Libraries users.

【linux】  【mysql】  【c++】  【windows】  【开发环境】  【odbc】  【source】  【cppunit】   …

[获取更多]
[MySQL SQL优化系列]之如何高效获取随机数据

起因

前几天有位同事问我MySQL要怎么返回一张表的几行随机数据。这个问题其实网上随便一搜答案一大把,但是效果都不太理想,当你要获取随机几行(不是1行)时,得到的数据不是全随机的,而是随机区域。那么有没有办法真正的返回全随机的数据呢?

分析

一般来说获取随机数据,我们第一时间想到的应该是rand()函数。最直接的是order by rand() limit n,这完全能够符合我们的需求,但是效率之地令人发指。我们来看看手册里面是怎么对这个函数描述的:

Returns a random floating-point value v in the range 0 <= v < 1.0.

You cannot use a column with RAND() values in an ORDER BY clause, because ORDER BY would evaluate the column multiple times.

RAND() is not meant to be a perfect random generator. It is a fast way to generate random numbers …

[获取更多]
[MySQL SQL优化系列]之如何高效获取随机数据

起因

前几天有位同事问我MySQL要怎么返回一张表的几行随机数据。这个问题其实网上随便一搜答案一大把,但是效果都不太理想,当你要获取随机几行(不是1行)时,得到的数据不是全随机的,而是随机区域。那么有没有办法真正的返回全随机的数据呢?

分析

一般来说获取随机数据,我们第一时间想到的应该是rand()函数。最直接的是order by rand() limit n,这完全能够符合我们的需求,但是效率之地令人发指。我们来看看手册里面是怎么对这个函数描述的:

Returns a random floating-point value v in the range 0 <= v < 1.0.

You cannot use a column with RAND() values in an ORDER BY clause, because ORDER BY would evaluate the column multiple times.

RAND() is not meant to be a perfect random generator. It is a fast way to generate random numbers …

[获取更多]
MYSQL错误解决:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) 据说这个问题的原因很多,当然,我自己这个问题我是清楚的,就是mysql.sock的位置所致,一个是PHP要求的,一个是MYSQLD定义的,一个是MY.CONF指定的。

【php】  【服务器】  【mysql】  【配置】  【Server】  【Socket】   …

[获取更多]
python+flask+html/css+mysql+BAE 打造CSDN简历自动生成系统(附网站完全源码)

1.背景

       一直想自己动手写个web app玩玩,前几天看了一个github的resume自动生成的web-app,所以就动手仿造了一个csdn的简历生成器。结构很简单,前端是html/css文件(这个模仿了github的那个网页,因为博主不太懂前端)。后台是一个爬虫软件,可以把csdn的个人信息爬下来,然后显示出来,最后部署到了百度云。百度的云数据库,真是坑爹.......,我

【python】  【css】  【mysql】  【http】  【源码】   …

[获取更多]
SOCI、LiteSQL、POCO数据库访问类库对比

最近在做视频的开发,其中视频的设备接入管理服务器、流媒体管理服务器、中心服务器都涉及到了数据库的操作,同时需要兼容大多数版本的数据库,包括mysql、sqlite、oracle。公司原来使用的是ado来进行数据库的开发的, 但是考虑到目前需要兼容linux,目前使用Poco框架封装的数据库模块进行开发。

【PostgreSQL】  【服务器】  【mysql】  【c++】  【http】   …

[获取更多]
centos7上安装mysql

在centos的库中mysql已经被mariadb数据库替代,如果想继续在centos上安装mysql就需要自己下载安装包# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm # rpm -ivh mysql-community-release-el7-5.noarch.rpm # yum in

【mysql】  【http】  【数据库】  【yum】  【配置】  【centos】   …

[获取更多]
表示 进入内容 139411395015677
« 先前的 10 新的记录 | 下一步 10 较早的记录 »