XAMPP 8.2.1.2 慢

问题描述 投票:0回答:1

我刚刚安装了 XAMPP 8.2.12。它非常慢,因为无法处理我网站上使用大量数据库访问的某些页面。 我注意到当我导入数据库时,索引全部丢失,所以我重新创建了它们。那没有帮助。我运行了 mysqlcheck 以防万一,但同样没有帮助。 mysqld 消耗大量电量并始终位于进程列表的顶部,尽管它仅使用大约 25% 的 CPU、RAM 和磁盘。 Windows 10 专业版、12 GB 内存、酷睿 i5。我在错误日志中没有收到错误,只是处理速度非常慢。

此下载内容如下:

Apache 2.4.58、MariaDB 10.4.32、PHP 8.2.12、phpMyAdmin 5.2.1、OpenSSL 3.1.3、XAMPP 控制面板 3.2.4、Webalizer 2.23-04、Mercury 邮件传输系统 4.63、FileZilla FTP 服务器 0.9。 41、Tomcat 8.5.96(使用 mod_proxy_ajp 作为连接器)、Strawberry Perl 5.32.1.1 Portable

我切换回8.0.0进行比较,它仍然运行良好。

这是我的 php.ini。 任何人都可以看到问题吗? 还有人遇到这个问题吗?

php.ini

php apache mariadb xampp
1个回答
0
投票

有几个因素可能导致您的 XAMPP 8.2.12 设置在 Windows 10 上执行速度如此缓慢,特别是如果您以前版本的 XAMPP 运行相同的应用程序没有问题。以下是一些可供研究的潜在解决方案,特别是考虑到您共享的设置详细信息和系统信息:

1. MariaDB 版本和设置

  • MariaDB 优化:MariaDB 10.4.32 的行为可能与旧版本不同。您可以在
    my.ini
    (MariaDB 配置文件)的
    [mysqld]
    部分下调整其设置:
    • 增加 InnoDB 表的缓冲池大小:尝试将
      innodb_buffer_pool_size
      设置为总 RAM 的 25-50% 左右(在您的情况下为 3-6GB)。
    • 调整缓存大小设置,以在高读/写负载下获得更好的性能:
      • query_cache_size = 0
      • query_cache_type = 0
    • 如果您的应用程序运行复杂的查询,
    • 临时表大小连接缓冲区大小调整可能会有所帮助。
      • tmp_table_size = 64M
      • max_heap_table_size = 64M
  • 线程池:设置
    innodb_thread_concurrency
    (例如,设置为 8)并调整
    innodb_read_io_threads
    innodb_write_io_threads
    (例如,各 4 个)可能有助于处理并发数据库访问。

2. php.ini 中的 PHP 配置

  • 由于您使用的是 PHP 8.2.12,请考虑调整以下设置以提高数据库密集型应用程序的性能:
    • 内存限制:将
      memory_limit
      设置为至少 512M,以处理更大的查询或大量数据处理。
    • Realpath Cache:将
      realpath_cache_size
      设置为
      4096k
      并将
      realpath_cache_ttl
      设置为
      600
      以减少文件系统访问时间。
    • Opcache 设置
      opcache.enable=1
      opcache.memory_consumption=128
      opcache.interned_strings_buffer=8
      opcache.max_accelerated_files=10000
      opcache.validate_timestamps=1
      opcache.revalidate_freq=60
      
    • 错误日志记录:暂时禁用错误日志记录,以查看是否可以通过注释掉或设置
      log_errors = Off
      来减少负载。过多的日志记录可能会减慢速度,尤其是在日志很大或重复出现错误的情况下(尽管没有出现任何错误,但仍然可能会影响性能)。

3. 磁盘 I/O 和 XAMPP 的文件夹权限

  • 安装路径:确保XAMPP安装在具有读/写权限的文件夹中,并尽量避免像
    C:\Program Files
    这样受系统保护的文件夹。推荐的路径通常是
    C:\xampp
  • 文件访问:如果您使用大型数据库或有多个应用程序,则 Windows 上的磁盘 I/O 可能会变慢。检查防病毒软件是否实时扫描XAMPP目录;如果是这样,请尝试添加排除项。

4. Windows 特定注意事项

  • 电源计划:检查控制面板 > 电源选项下的 Windows 电源计划设置,并将其设置为 高性能。 Windows 有时会限制其他计划中后台进程的 CPU。
  • 后台应用程序:禁用任何可能竞争资源的后台应用程序,并确保为 XAMPP 目录禁用 Windows 索引。
  • 交换/页面文件设置:确保系统的页面文件(虚拟内存)由Windows自动管理或将其设置为RAM大小的1.5倍左右。

5. MariaDB 10.4 与 MySQL

  • 由于 MariaDB 处理查询的方式可能不同,因此值得通过在 MariaDB 中启用慢查询日志来检查慢查询:
    slow_query_log = 1
    slow_query_log_file = "C:/xampp/mariadb/data/slow_log.log"
    long_query_time = 2
    

这将帮助您识别可能表现不佳的特定查询并单独调整它们。

6. 切换回稳定性

  • 由于 8.0.0 运行良好,如果时间紧迫,您可能希望继续使用 8.0.0,直到 XAMPP 或 MariaDB 解决您的设置中与版本 10.4 兼容性的任何潜在问题。

应用这些调整,尤其是针对 MariaDB 和 PHP 缓存的调整,通常可以提高 XAMPP 在大型数据库驱动应用程序中的性能。如果您的

php.ini
的特定部分需要审核,请告诉我,我可以仔细研究潜在的瓶颈。

© www.soinside.com 2019 - 2024. All rights reserved.