关于 阿里云 RDS MySQL 排序分页查询数据错乱的原因和解决方案
1、某些时候MySQL 排序分页查询会出现数据错乱的情况 比如:
CREATE TABLE alarm_test ( id bigint(20) NOT NULL DEFAULT '0', detail varchar(255) CHARACTER SET utf8 NOT NULL, created_on timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) 。
UNIX时间戳 转换 为日期
from_unixtime(unix_timestamp, format)
参数:UNIX 时间戳返回值:字符串
from_unixtime(1506648322, '%Y-%m-%d %H:%i:%s')
所以大家要注意,以后查询数据库的时候,如果字段是string类型的,条件的值必须加上 单引号,以提升查询的效率!
增加或减少数据节点的数量和 NoOfReplicas(即副本数,通过管理节点的config.ini配置文件来设置)有关,一般来说NoOfReplicas是2,那么增加或减少的数量也应该是成对的,否则要设置另外的NoOfReplicas。首先必须确保新加入的数据节点作为新的group加入,默认2个node为1个group,Group数量 = NDB节点总数 / NoOfReplicas数。
Linux系统上,需要安装 Freetds 才能访问 SQL Server 服务
[mysqld]
slow-query-log = on # 开启慢查询功能
slow_query_log_file = /usr/local/mysql/data/slow-query.log # 慢查询日志存放路径与名称
long_query_time = 5 # 查询时间超过5s的查询语句
### log-queries-not-using-indexes = on # 列出没有使用索引的查询语句
Atlas是由 Qihoo 360, Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目。它在MySQL官方推出的 MySQL-Proxy 0.8.2 版本的基础上,修改了大量bug,添加了很多功能特性。目前该项目在360公司内部得到了广泛应用,很多MySQL业务已经接入了Atlas平 台,每天承载的读写请求数达几十亿条。
官方对PHP连接到MySQL数据库服务器的三种主要的API简介如下:
http://php.net/manual/zh/mysqli.overview.php
PHP mysql与mysqli事务详解
在PHP中,mysqli 已经很好的封装了mysql事务的相关操作。如下示例: