小编Tho*_*mas的帖子

在 Debian 上使用多个内核进行单个 MySQL 查询

我正在运行 MySQL 服务器,以在 Debian 作为来宾操作系统的 VM (VMWare) 上进行测试。来宾有四个模拟 CPU 内核,因此我将 thread_concurrency 设置为四个。

我在大型表上执行昂贵的连接,这可能需要几分钟,但我在来宾操作系统上看到,一次只使用一个核心。无论用于所涉及的表的存储引擎如何(使用 MyISAM 和 InnoDB 测试),都会发生这种情况。此外,在执行这些大型查询时,整个数据库似乎都被阻塞了,我无法并行执行任何其他查询。奇怪的是 htop 显示,用于查询的核心在查询运行时发生了变化!

为什么会发生这种情况?

这是来自SHOW FULL PROCESSLIST;(没有其他查询)的相关条目:

| 153 | root       | localhost | pulse_stocks  | Query   |   50 | Copying to tmp table | 
SELECT DISTINCT * FROM 
`pulse_stocks`.`stocks` sto,
`pulse_new`.`security` sec
WHERE
(sto.excntry = sec.excntry AND sto.stock_id = sec.ibtic) OR
( sto.isin = sec.isin AND sto.isin <> "" AND sec.isin <> "" )
ORDER BY
sto.id
LIMIT 0, 30 
Run Code Online (Sandbox Code Playgroud)

没有其他待处理的查询。另一个有趣的观察是,如果我省略这 …

mysql innodb myisam concurrency parallelism

11
推荐指数
1
解决办法
2万
查看次数

跨数据中心MySQL主从复制的最佳解决方案

我们正在为我们公司开发一种新的系统架构。我们有一个 HPC,它在我们自己的数据中心运行,我们正在规划我们的前端和 Amazon Web Service 上的后备系统。

系统架构:

系统架构

先决条件:

  • HPC集群写操作很多
  • 网站和API都在大部分时间读取数据,很少写入
  • 从 AWS 到我们集群的 Ping 大约是 35 毫秒
  • 如果我们的本地数据中心出现故障,应该在 AWS 上复制 HPC,将 MySQL Slave 变成新的 Master

题:

在这种设置中复制 MySQL 数据库的最佳解决方案是什么?

mysql replication

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

mysql ×2

concurrency ×1

innodb ×1

myisam ×1

parallelism ×1

replication ×1