我试图让运行MariaDB 10.1.7 64位的两台服务器之间的复制工作。 我试图复制的数据库是巨大的,520G和具有禁用自动提交从站上的导出/导入需要5天。 当我最初开始复制时,似乎奴隶会赶上。 它实际上看起来很有希望。 可悲的是,30分钟后,我再次检查奴隶,我意识到,它实际上落后了。 在晚上的一个晚上,当主人不是那么忙的时候,看起来真的好像又回来了,不过现在Seconds_Behind_Master已经快一周了。 我将slave_parallel_mode设置为激进,在slave上我设置slave_parallel_threads为30,而在master上设置为10. innodb_flush_log_at_trx_commitvariables在slave上为1,在master上为0。 这是主人的configuration: [client] port = 3306 socket = /var/lib/mysql/mysqld.sock [mysqld] port = 3306 socket = /var/lib/mysql/mysqld.sock log-error=/var/log/mysql/logs/mysql.log datadir=/RAID50/innodb/mysql/ init-connect = 'SET NAMES UTF8' character-set-server = utf8 server_id=1 sync_binlog=1 back_log = 50 max_connections = 450 max_connect_errors = 9999999 table_cache = 4096 max_allowed_packet = 16M binlog_cache_size = 1M […]
我在一个客户的网站上工作,他已经通过1and1托pipe。 他们不允许从任何地方直接连接到他们的MySQL服务器。 我不能在Windows上加载一个mySQL GUI,只是连接和处理数据库,它说主机没有find。 另一方面,他的托pipe帐户可以访问mySQL服务器,即使它位于不同的位置。 假设这些是我正在使用的服务器: 他的主持人: 地址:thehost.com 用户名:joe 他的mySQL服务器: 地址:mysqlserver.com 港口:3306 数据库:thedata 用户:dbouser 他的主要托pipe帐户来自SSH。 所以,如果我SSH端口22上的host.com,然后使用mysql命令连接到mysqlserver.com,它的工作原理。 我试图设置SSH隧道,但问题是它不是允许SSH的mySQL服务器,它是主要的托pipe。 如何在Mac和Windows机器上设置SSH隧道,以便我可以运行任何我想要的GUI,并且可以连接到mysqlserver.com服务器。 所有基于上述信息的SSH访问仅限于host.com,而host.com本身可以连接到mysqlserver.com。
我最近在我的mysql服务器上遇到一些问题,所以我决定检查错误日志: [root@LSN-D1179 log]# tail -10 mysqld.log 100325 19:30:03 [ERROR] /usr/libexec/mysqld: Table './lfe/actions' is marked as crashed and should be repaired 100325 19:30:03 [ERROR] /usr/libexec/mysqld: Table './lfe/actions' is marked as crashed and should be repaired 100325 19:30:18 [ERROR] /usr/libexec/mysqld: Disk is full writing './omuz/ibf_task_logs.MYD' (Errcode: 122). Waiting for someone to free space… Retry in 60 secs […]
我想弄清楚如何设置复制和故障切换在4个服务器(每个位置2个)任何服务器可能承担主angular色的情况下。 我最初的情况是以下一个: 位置A的2台服务器(One Master,One Slave); 位置B(2个从站)中的2台服务器。 为此,我正考虑使用在O'Reilly的“高性能MySQL”上提出的configurationMaster-Master Active-Passive,以便每个人都可以在需要时成为Master。 如果主人“死亡”,地点A的其他服务器将尽可能承担主angular色。 它总是比地点B上的服务器具有更高的优先级。如果地点A上没有服务器能够这样做,位置B上的服务器将只切换到主服务器。 由于MySQL无法自动处理,我需要一些其他的方式来实现这一点。 我已经读过心跳和Maatkit。 这是要走的路吗? 有没有人在类似的情况下使用这个? 有没有其他的方式去实现这一目标? 任何关于失败的指针将不胜感激。 我希望尽可能简单的避免像DRDB这样的东西。 我并不担心高可用性只是自动切换angular色的一种方法,没有太多的麻烦。 我正在使用SuSe Enterprise 10和MySQL 5.1.30社区。 提前致谢, 若昂
我正在为现有的Ubuntu服务器设置设置备份服务器。 我正在运行DRBD(协议C)以及configuration的心跳线,以便在发生错误时启动备份服务器上的MySQL5服务器。 我想在复制后使用drbd和心跳来启动mysql服务器。 我更改了my.cnf文件中的datadir和apparmor.d / usr.bin.mysqld。 当drbd设备未安装时,Mysql启动。 我的日志显示如下: Oct 26 12:55:28 twyford-hambc2 mysqld[27627]: 101026 12:55:28 InnoDB: Operating system error number 13 in a file operation. Oct 26 12:55:28 twyford-hambc2 mysqld[27627]: InnoDB: The error means mysqld does not have the access rights to Oct 26 12:55:28 twyford-hambc2 mysqld[27627]: InnoDB: the directory. Oct 26 12:55:28 twyford-hambc2 mysqld[27627]: […]
所以我们有一个在主键上有两个索引的表,在表上的另一个列上有另一个索引。 索引大小比表本身大12倍。 这种情况发生的原因是什么? 我们之前已经对表格进行了优化,并且有所帮助,但是它又在增长。 谢谢!
数据库的模式如下。 CREATE TABLE `items` ( `id` mediumint( 8 ) unsigned NOT NULL AUTO_INCREMENT , `name` varchar( 45 ) NOT NULL , `main_type` tinyint( 4 ) NOT NULL , `rarity` tinyint( 4 ) NOT NULL , `stack_size` smallint( 6 ) NOT NULL , `sub_type` tinyint( 4 ) NOT NULL , `cost` mediumint( 8 ) unsigned NOT […]
我有一个约5000万行的表(innodb),试图放弃它,然后它挂起,我检查过程列表: 检查许可 什么是检查权限状态,为什么drop table需要它?
我正在运行的Ubuntu 10.10和MySQL服务器不断重启,每隔30秒左右。 如果我尾巴/ var / log / syslog我得到以下内容: Jul 26 11:41:57 ubuntu init: mysql post-start process (7981) terminated with status 1 Jul 26 11:41:57 ubuntu kernel: [ 3088.091492] type=1505 audit(1311676917.680:96): operation="profile_replace" pid=8055 name="/usr/sbin/mysqld" Jul 26 11:41:59 ubuntu init: mysql main process (8059) terminated with status 7 Jul 26 11:41:59 ubuntu init: mysql main process ended, […]
我正在用一个非常简单的InnoDB表(名为Test)进行一些testing,结果如下: Id int(10) unsigned NOT NULL AUTO_INCREMENT UserId int(10) NOT NULL Body varchar(512) COLLATE utf8_unicode_ci NOT NULL CreatedAt datetime NOT NULL UserId上的一个附加索引: KEY Idx_Test_UserId (UserId) USING BTREE 当我尝试执行此查询… INSERT INTO Comments (UserId,Body,CreatedAt) VALUES (1,'This is a test',NOW()) …有时候我会在几毫秒内完成操作,但有些时候我需要几秒钟的时间。 我有一个简单的SELECT语句相同的问题: SELECT Body FROM Comments WHERE UserId=1 我是唯一一个在这个特定的表上做testing的人,我真的不明白我有这样的执行时间差异。 最后一点,当我用MyISAM表进行相同的testing时,我没有任何问题。