AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-5864

com's questions

Martin Hope
com
Asked: 2012-10-15 08:22:24 +0800 CST

更改 master 上的 server_id 会破坏复制吗?

  • 1

我有几棵MySql绝对孤立的树,每棵树都有一个主人和几个奴隶。

出于自动化目的,我需要为所有主机设置相同的server_id(这将简化需要server_id的 pt-heartbeat 的使用)。这应该很好,因为所有的树都是孤立的。

我想知道,如果我更改master 上的server_id,重新启动 master,是否会损坏复制?当然会有短暂的复制中断,但这会完全中断复制吗?

问题是改变server_id是否会完全破坏复制,它会改变 bin-log 中的位置吗?

更新:实际上我不必重新启动 mysql,我可以在控制台中使用 SET GLOBAL server_id=xxx 更改它,在这种情况下我不需要重新启动。

mysql replication
  • 2 个回答
  • 662 Views
Martin Hope
com
Asked: 2012-09-05 05:00:54 +0800 CST

安全地将主人提升为奴隶

  • 4

以前我问过类似的问题MySql Switching Masters During Failover with log-slave-updates。

假设这是我们当前的复制

在此处输入图像描述

另外,我的应用服务器很少。每个应用程序服务器直接连接到Master 1以进行 INSERT 和 UPDATE,并连接到 Slave[1-3] 以进行 SELECT。

我的问题是我如何才能将Master 2提升为真正的唯一大师。重要提示Master 2和它下面的所有 slave 都是 mysql 5.5,Master 1是 mysql 5.2

当我在应用程序设置中将Master 1的 IP更改为Master 2的 IP 并进行部署时,有一段时间我在Master 1和Master 2上都有 UPDATE 和 INSERTS ,这导致 Master 2上出现“Duplicate entry ...” 。之后我重建树并在部署前几秒在Master 2上运行 STOP SLAVE。当然,我丢失了一些数据,这些数据被插入到Master 1而没有复制到Master 2。

那么,在不丢失数据的情况下这样做的正确方法是什么。

此外,我仍然不明白在 STOP SLAVE 之后要在Master 2上运行什么以重置“从属设置”,看起来我真的不必这样做,只是 STOP SLAVE 一切都应该工作,但是只是为了保持我想重置“从属设置”的顺序。

mysql replication
  • 1 个回答
  • 1177 Views
Martin Hope
com
Asked: 2012-07-21 02:22:49 +0800 CST

在暂存环境中审查所有新的 MySql 查询

  • 1

我要解决的问题:众所周知,并不是所有的开发人员都知道 MySql 中的EXPLAIN是什么,也不是每个人都知道如何使用它。他们中的很大一部分人认为 MySql 是一个黑盒子,无论我写的查询是什么,我都期望最大的响应时间和正确的结果。我想你认识到这种情况。当然,更有经验的开发人员应该对他们进行教育,但我正在寻找最佳实践,以防止在 QA 团队遇到糟糕的、卡住的查询并导致生产环境瘫痪时出现这种情况。

解决方法:我们可能有几种方法,第一种,对下一次部署的代码进行审查。这不是很方便,可能会花费很多时间,但非常有效。第二种,尝试通过查看 slow_logs 来识别 staging 环境中的慢查询,这种方法很简单,但效率不高,staging 上的数据与生产上的数据不同,因此生产上的慢查询完全可以查询分期。

你怎么看,如何防止写得不好,查询慢到生产环境?

mysql performance
  • 1 个回答
  • 223 Views
Martin Hope
com
Asked: 2012-04-25 01:02:27 +0800 CST

Ubuntu 存储库中的 MySql 5.5

  • 0

抱歉重复的问题。

我正在寻找在 ubuntu 上安装 mysql 5.5 的最佳方法。

到目前为止,有几个选择:

  • 从 tar.gz 安装

  • 从 PPA 安装。

  • RPM 上的外星人。

所有这些对我来说似乎都不是最佳的。从 tar.gz 安装需要很长时间,并且可能有出错的余地。从 PPA 安装很危险,我不想在生产服务器上安装非官方的或可能与官方版本不同的东西。在 RPM 上运行外星人不是一个好的安装方式。

你是如何在 ubuntu 服务器上安装 Mysql 5.5 的?

版本:Ubuntu 10.04.3 LTS

ubuntu mysql-5.5
  • 1 个回答
  • 3137 Views
Martin Hope
com
Asked: 2012-04-05 01:17:45 +0800 CST

云服务大师落后几秒钟

  • 2

我在云服务的复制主从中几乎没有 mysql 服务器。

问题是即使所有的配置、mysql 版本、服务器的资源都是相同的,但我仍然在 slave 的行为中存在不一致。

例如,我有一组运行良好的稳定 mysql 从服务器,以及一组不稳定的从服务器,即使在空闲模式下仍然落后于主服务器几秒钟,没有流量,而不稳定的服务器始终是相同的服务器。

我正在寻找稳定和不稳定奴隶的不同之处。到目前为止,我还没有找到这样的东西。如果您知道如何找到与众不同的东西,请与我们分享。

谢谢。

mysql replication
  • 1 个回答
  • 222 Views
Martin Hope
com
Asked: 2012-03-29 03:02:04 +0800 CST

为什么 Oracle 继续致力于 MySQL 5.1

  • 6

2 年前,第一个版本的 Mysql 5.5 发布了。继续使用 MySQL 5.1 的原因是什么——当前版本是 Mysql 5.1.62

看起来它们之间应该有根本的区别。我很困惑更喜欢哪个版本。

mysql mysql-5.5
  • 1 个回答
  • 261 Views
Martin Hope
com
Asked: 2012-02-13 02:38:46 +0800 CST

Mysql 复制自动化脚本

  • 1

我正在寻找可以帮助我们创建大量连接到指定主服务器的 mysql 从服务器的东西,比如说批量复制。

如果为此目的有任何现有的解决方案。在简单的情况下,它可以只是 bash 脚本,它锁定主数据库,将表文件复制到新的从属数据库,恢复位置并开始复制。

据您所知,是否存在上述内容?

mysql replication
  • 3 个回答
  • 6128 Views
Martin Hope
com
Asked: 2012-02-04 12:09:14 +0800 CST

MySql 在故障转移期间使用 log-slave-updates 切换主控

  • 3

我还是mysql的新手。这个问题是关于使用选项--log-slave-updates提升从属服务器成为主服务器。

在15.3.6 Switching Masters during Failover中描述了将 slave 升级为 master 的典型模式。在这里您可以找到非常严格的步骤:

使用 --log-bin 选项运行从属服务器,而不使用 --log-slave-updates。在没有 --log-slave-updates 的情况下运行从属服务器的原因是为了防止从属服务器接收两次更新,以防您导致其中一个从属服务器成为新的主服务器。

假设我有如下架构(图像取自15.3.5. Improvement Replication Performance)。

在此处输入图像描述

Master 2实际上是一个启用了--log-slave-updates和 bin-log 的从站。我需要启用 --log-slave-update 以便将主设备 1的 bin-log 保存到主设备 2的 bin-log,然后将其传输到所有从设备。在故障转移的情况下,我需要将Master 2提升为Master 1的角色。但是与我启用了 --log-slave-updates 的标准 MySql 故障转移模式存在矛盾,这可能会导致问题。

依你的意见。为了做到这一点,我应该采取什么行动?

mysql replication
  • 1 个回答
  • 2259 Views
Martin Hope
com
Asked: 2012-01-25 01:12:12 +0800 CST

使用复制进行横向扩展

  • 8

阅读使用复制进行横向扩展后,如何将不同的查询路由到不同的服务器,例如,SELECT我想路由到从服务器和NON-SELECT主服务器。我假设作为负载均衡器我可以使用haproxy,但我没有发现可以在haproxy级别的查询之间区分?另外,假设有人直接到达了master,master如何识别这是SELECTquery和show发送给slave,或者loadbalancer。

mysql replication
  • 3 个回答
  • 392 Views
Martin Hope
com
Asked: 2012-01-20 01:18:43 +0800 CST

我应该使用哪个版本的 MySQL?

  • 5

多年来,我一直在使用MySQL 5.1.37。

最近发现repository已经不支持这个版本了,所以需要升级mysql。

我认为更改版本应该是一个复杂的过程,随着my.cnf的变化,并且可能随着代码的变化而变化。

问题

  • 哪个版本最稳定和首选?
  • 我应该使用哪个版本?
mysql upgrade
  • 2 个回答
  • 4929 Views
Martin Hope
com
Asked: 2012-01-19 08:54:30 +0800 CST

MySql 复制与原始数据和 InnoDB 表

  • 3

我想在具有许多 InnoDB 表和 MyISAM 表的数据库上开始复制。我按照手册Creating a Data Snapshot Using Raw Data Files做了所有事情。

首先,我尝试在没有ib_logfile和ibdata的情况下复制所有带有中继日志等的表文件。复制不起作用,它找不到 InnoDB 表,之后我尝试对ib_logfile和ibdata做同样的事情,它失败并出现错误消息Error 'Unknown table engine 'InnoDB'' on opening tables。

当我试图从原始服务器复制 my.cnf 时,mysql 根本无法启动(版本 5.1.41)。

我不确定是否可以使用原始数据和 InnoDb 文件开始复制。拜托,如果你有经验,请与我分享。我该如何处理。

谢谢!

mysql replication
  • 2 个回答
  • 2077 Views
Martin Hope
com
Asked: 2012-01-18 10:05:28 +0800 CST

如何检查mysql中表的一致性

  • 2

在两种情况下,我对 Mysql 的一致性几乎没有疑问

第一种情况:如何验证恢复的备份与所有表上的原始数据库数据匹配?

如果有任何方法可以检查数据是否真的相同,我们有两台主机具有相同的数据库 A 和 B(相同的数据,恢复到不同的数据库)。也许某种 md5 哈希表会有所帮助。如果有现有的解决方案?当然,自己做一些事情并不复杂,一种验证者。

第二种情况假设我们有非常严格的数据库逻辑模式。我需要检查我们的数据库是否根据模式工作。假设每个订单都有ProductId等。听起来要复杂得多,如果您遇到这些问题,您将如何处理它们。

谢谢!

mysql data-validation
  • 1 个回答
  • 10139 Views
Martin Hope
com
Asked: 2012-01-18 04:49:16 +0800 CST

ORDER命令的mysql实现

  • 4

抱歉问了一个愚蠢的问题,我尝试在末尾使用 WHERE 子句和 ORDER 进行查询,这实际上需要很长时间才能实现,甚至认为 WHERE 子句在索引字段上。看起来 Mysql 首先对整个表执行 ORDER,然后再执行 SELECT,这不是首选行为。我对吗?我怎样才能让它先执行SELECT,然后执行ORDER。

谢谢!

附录:

mysql> explain SELECT * 
               FROM `products` 
               WHERE (`products`.user_id = 1111) 
                 AND ( (`products`.`type` = 'type1' ) )  
               ORDER BY products.id DESC 
               LIMIT 1 \G;
*************************** 1. row ***************************
           id: 1
  select_type: SIMPLE
        table: products
         type: ref
possible_keys: index_products_on_user_id, index_products_on_type
             , index_products_on_type_and_status
          key: index_products_on_user_id
      key_len: 5
          ref: const
         rows: 2570
        Extra: Using where; Using filesort
mysql
  • 3 个回答
  • 259 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve