Questions tagged «innodb»

InnoDB是MySQL中使用的主要的ACID兼容存储引擎。

5
MyISAM用于数据读取
我有一个约有10亿行的表,其98%的读密集型。 我尝试使用不同的存储引擎(MyISAM和InnoDB)调整数据库 然后进行一些测试以查看性能 在where子句中,我有一个主键ID,而且由于MyISAM Ke​​y Cache存储将所有索引加载到其缓冲区中,因此使用MyISAM似乎非常快,比InnoDB快2倍。 但是对于InnoDB来说,它似乎更慢!InnoDB是否不使用任何缓冲区预加载索引?
10 mysql  innodb  myisam 

2
MySQL InnoDB数据库在选择时“挂起”
我正在尝试在我们的服务器上修复MySQL配置。我们的应用程序的特点是很多数据存储在单个表中(当前超过3亿行)。该表经常用于插入(它们总是出现)。 当我在该表上花费超过几秒钟的时间运行选择查询时,所有插入(精确地提交)都在等待表访问,并使我们的应用程序无响应。 据我所知,当select运行时,InnoDB不会对表进行任何锁定。为什么选择阻止表呢? 我试图找到使用innotop的原因,但是我不确定如何解释它的输出以及在哪里进行搜索。告诉我您需要什么,我会在这里发布。 +-----+---------+-----------+--------+---------+------+----------------+-----------------------------------------------------------------------------------------------------------------------------------+ | Id | User | Host | db | Command | Time | State | Info | +-----+---------+-----------+--------+---------+------+----------------+-----------------------------------------------------------------------------------------------------------------------------------+ | 1 | root | localhost | dbname | Query | 29 | NULL | COMMIT | | 2 | root | localhost | dbname | Query …
10 mysql  innodb  blocking 


2
在使用InnoDB数据库之前,我应该知道些什么?
在使InnoDB数据库可用之前,服务器或数据库管理员应了解和做什么。 我正在考虑为innodb_buffer_pool_size和设置正确的值innodb_log_file_size 那么,您忘了配置哪些简单的事情,这些简单的事情会使使用数据库的应用程序无法达到最佳状态呢?
10 mysql  innodb 

1
MySQL(MariaDB)经常崩溃
我最近将一台运行MySQL的旧服务器迁移到了一台运行MariaDB 5.5的新VPS。我在服务器上没有运行太多的东西(仅几个PHP站点),可用内存似乎还可以,但是数据库不断崩溃-有时每隔几天,有时在几个小时内崩溃。 我在日志中收到以下错误: 131231 1:43:04 [ERROR] mysqld: Out of memory (Needed 128917504 bytes) 131231 1:43:04 [ERROR] mysqld: Out of memory (Needed 96681984 bytes) 131231 1:43:04 [ERROR] mysqld: Out of memory (Needed 72499200 bytes) 131231 1:43:04 [ERROR] mysqld: Out of memory (Needed 54362112 bytes) 131231 1:43:04 InnoDB: The InnoDB memory heap …

3
与MyISAM混合使用时,InnoDB表在mysqldump期间是否被锁定?
我正在寻找适用于mysql服务器的备份解决方案,并且我需要的停机时间尽可能短。我有以下几点: MySQL服务器 他们没有被复制 每个服务器代表自己的服务器 这个数字可能会增加,因此设置主/从复制不是一个好主意。 我认为最简单的备份方法是将mysqldump与“ automysqlbackup”之类的软件一起使用。我最重要的数据使用InnoDB。我的InnoDB表很重。 问题是:如果我对服务器中的所有数据库执行mysqldump,它将锁定我的Innodb表吗?


2
将大表从MyISAM转换为Innodb
我有一个表,该表包含约3亿行MyISAM格式,我想转换为Innodb 我最初的目标是通过将表架构更改为具有更简单的索引来减少使用量。我转储了所有表,将其删除,用更少的索引重新创建了表,现在重新导入。但是,我忘记指定它应该是innodb而不是myisam。 我可以只做标准的ALTER TABLE ... ENGINE = INNODB吗?如此庞大的桌子,我应该注意什么特别的地方? 数据导入操作大约需要12个小时-我不愿意再次这样做。因此,为什么我只想转换它。
9 mysql  innodb 

4
如何有效地转储巨大的MySQL innodb数据库?
我有一个Ubuntu 10.04生产型MySQL数据库服务器,其中数据库的总大小为260 GB,而根分区的大小本身为300 GB,用于存储数据库,这实际上意味着大约96%的/已满,并且没有空间来存储转储/备份等等。到目前为止,没有其他磁盘连接到服务器。 我的任务是将该数据库迁移到位于不同数据中心的其他服务器。问题是如何在最少的停机时间内有效地做到这一点? 我在考虑以下方面: 请求将额外的驱动器连接到服务器,并在该驱动器中进行转储。[编辑:现在不可能。] 将转储转移到新服务器,还原它,并使新服务器成为现有服务器的从属服务器,以保持数据同步 当需要迁移时,中断复制,更新从属配置以接受读/写请求,并使旧服务器为只读,这样它就不会招待任何写请求,并告诉应用程序开发人员使用新的db IP地址更新该配置。 您对改进此任务或任何其他更好的方法有何建议?
8 innodb  mysql 

2
MySQL慢写
插入下表最多需要70秒才能完成: CREATE TABLE IF NOT EXISTS `productsCategories` ( `categoriesId` int(11) NOT NULL, `productsId` int(11) NOT NULL, PRIMARY KEY (`categoriesId`,`productsId`), KEY `categoriesId` (`categoriesId`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 该表中大约有100,000行,它占用了7MB磁盘空间。 MySQL中是否有一些设置可以提高写入性能? 我的my.cnf文件如下: log-slow-queries="/var/log/mysql/slow-query.log" long_query_time=1 log-queries-not-using-indexes innodb_buffer_pool_size=4G innodb_log_buffer_size=4M innodb_flush_log_at_trx_commit=2 innodb_thread_concurrency=8 innodb_flush_method=O_DIRECT query_cache_size = 6G key_buffer_size = 284M query_cache_limit = 1024M thread_cache_size = 128 table_cache …
8 mysql  innodb 

5
如何微调我们的MySQL服务器?
MySQL不是我的事,但是我需要微调其中一台服务器。 以下是要求/规格: MySQL服务器只有一个重要的数据库 我们只有一个“类型”的应用程序与其连接,并且没有多少实例同时连接到它:最多15个(这些应用程序是XMPP机器人程序) 这些应用程序具有无阻塞的IO,这意味着它们永远不会在数据库服务器上“等待”并在处理数据库查询时继续处理传入的请求。这意味着有时该应用程序的一个实例可以与数据库服务器建立多个(很多!)连接(特别是在某些查询很慢的情况下) 所有查询都使用索引 我们的主机仅运行MySQL。这是具有2GB RAM的Xen实例(@slicehost)。 我们使用InnoDB表是因为我们需要一些基本的事务,但是如果这会对性能产生实际影响,则可以切换到MyISAM。 现在配置好了,我们的MySQL服务器开始慢慢吃光所有可用内存(我们使用collectd,这是一个图)。在某些时候(几天/几周之后),它停止执行查询(它在今晚停止了2个小时,而我不得不重新启动MySQL服务器:请参见第二张图片): (对不起,新用户无法发布图片,只有1个超链接:/) 每周:http://i27.tinypic.com/6ticyv.jpg 今日:i31.tinypic.com/ir53yg.png 这是我们当前的my.cnf # # The MySQL database server configuration file. # # This will be passed to all mysql clients # It has been reported that passwords should be enclosed with ticks/quotes # escpecially if they contain "#" …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.