【问题标题】:MariaDB low memory usageMariaDB 内存使用率低
【发布时间】:2019-01-23 02:22:34
【问题描述】:

我正在使用 32GB 内存的专用服务器上运行 woocommerce 安装。 服务器使用 CentOS、nginx、php-fpm(版本 7,带有 opcache 和 apcu)和 MariaDB。

服务器在日常电子商务操作中表现得非常好。 我还在运行一个用于产品导入的自定义脚本,该脚本会执行大量密集查询(使用库存、价格、描述和其他元信息更新具有 6-20 种变体的产品)。

我一直在测量脚本执行时间,它的运行时间最长为 80 秒。

问题是在最后几天,脚本运行速度极慢,平均约为 1500 秒。

服务器或脚本本身没有变化。 我发现的唯一问题是,当脚本运行时,mariadb 使用 100% cpu(以前没有这种情况)。

这是我的.cnf

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid


innodb_buffer_pool_size = 13G
innodb_buffer_pool_instances = 8

innodb_read_io_threads = 8
innodb_write_io_threads = 8
innodb_file_per_table = 1

tmp_table_size = 128M
max_heap_table_size = 128M

table_open_cache = 4000
table_definition_cache = 4000

key_buffer_size = 64M

thread_cache = 64

query_cache_type = 1
query_cache_limit = 4M
query_cache_size = 64M

似乎服务器没有使用任何可用的内存,在脚本执行期间,服务器仅使用了 32GB 可用内存中的 768mb。

MariaDB 一开始需要使用 13GB,这不是 inno_db_pool_size 的意义吗?

【问题讨论】:

    标签: wordpress performance caching woocommerce mariadb


    【解决方案1】:

    仅供大家参考,我刚刚发现了问题。

    我正在遍历 woocommerce 中每种产品的所有变体,并且正在更新一些元数据(价格、库存等)。 问题是在每个变体循环之后我都执行了 wp_flush_cache ,所以在下一个循环中,wordpress 再次从数据库中获取每条信息。

    注释掉上述行将执行时间从 1500 秒减少到 30 秒。

    所以问题从来不在于 mariadb。

    【讨论】:

      【解决方案2】:

      要确定脚本的哪些部分运行缓慢,请查看启用slow query log

      您在脚本中执行的查询结合表结构、大小和索引 (SHOW CREATE TABLE {tbl} / SHOW INDEXES FROM {tbl}) 将决定它们的速度。

      很可能您的表没有使用 Innodb。看看他们在用什么:

      SELECT TABLE_SCHEMA, TABLE_NAME, ENGINE
      FROM   information_schema.TABLES
      WHERE  TABLE_SCHEMA NOT IN ('mysql', 'information_schema', 'performance_schema', 'sys');
      

      【讨论】:

      • 奇怪的是,这一切都发生在几天前……我会调查一下,谢谢
      猜你喜欢
      • 2011-08-24
      • 1970-01-01
      • 2021-03-24
      • 2013-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多