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
    • 最新
    • 标签
主页 / server / 问题 / 133846
Accepted
TruMan1
TruMan1
Asked: 2010-04-20 09:47:58 +0800 CST2010-04-20 09:47:58 +0800 CST 2010-04-20 09:47:58 +0800 CST

MySQL不断崩溃OS服务器..请帮助调整my.ini!

  • 772

我在 Windows 2008 机器(3GB RAM)上安装了 MySQL 5.0。我的服务器经常崩溃(几乎每天一次)总是出现这个唯一的错误:

Changed limits: max_open_files: 2048  max_connections: 800  table_cache: 619

我没有使用沉重的 InnoDB .ini 文件,尽管我正在重新考虑我应该使用吗?我担心大的配置更改会使我当前的站点停止工作。我应该怎么办?

这是我当前的ini设置:

default-character-set=latin1
default-storage-engine=INNODB
max_connections=800
query_cache_size=84M
table_cache=1520
tmp_table_size=30M
thread_cache_size=38
myisam_max_sort_file_size=100G
myisam_sort_buffer_size=30M
key_buffer_size=129M
read_buffer_size=64K
read_rnd_buffer_size=256K
sort_buffer_size=256K
innodb_additional_mem_pool_size=6M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=3M
innodb_buffer_pool_size=250M
innodb_log_file_size=50M
innodb_thread_concurrency=10

以下是来自 phpMyAdmin 的一些额外信息:

服务器:MYSERVER(通过 TCP/IP 的本地主机)
服务器版本:5.0.90-community-nt
协议版本:10
MySQL 字符集:UTF-8 Unicode (utf8)
Microsoft-IIS/7.0
MySQL 客户端版本:5.0.90
PHP 扩展:mysqli

根据我的研究,在我看来,这个错误表明操作系统硬编码限制不断受到影响,我应该使用 innoDB 重 .ini 文件。但是,我不知道这对我使用 MySQL 的网站会有什么影响。下面是我正在考虑替换它的繁重的 innoDB 配置,谁能告诉我这对我的现有数据库站点意味着什么?它们都是 InnoDB,甚至它们的所有表都是 InnoDB。我在正确的轨道上吗?

[client]
port = 3306
socket = /tmp/mysql.sock

[mysqld]
port = 3306
socket = /tmp/mysql.sock

back_log = 50
max_connections = 100
max_connect_errors = 10
table_cache = 2048
max_allowed_pa​​cket = 16M
binlog_cache_size = 1M
max_heap_table_size = 64M
sort_buffer_size = 8M
join_buffer_size = 8M
thread_cache_size = 8
thread_concurrency = 8
query_cache_size = 64M query_cache_limit
= 2M
ft_min_word_len = 4
default_table_type = MISAM
thread_stack = 192K
transaction_isolation = REPEATABLE-READ
tmp_table_size = 64M
log-bin=mysql-bin
log_slow_queries
long_query_time = 2
log_long_format
server-id = 1 key_buffer_size
= 32M
read_buffer_size = 2M
read_rnd_buffer_size = 16M
bulk_insert_buffer_size = 64M
myisam_sort_buffer_size = 128M
myisam_max_sort_file_size = 10G
myisam_max_extra_sort_file_size = 10G
myisam_repair_threads = 1
myisam_recover
skip-federated
skip- bdb
innodb_additional_mem_pool_size = 16M
innodb_buffer_pool_size = 2G
innodb_data_file_path = ibdata1:10M:autoextend
innodb_file_io_threads = 4
innodb_thread_concurrency = 16
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 8M
innodb_log_file_size = 256M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 120

[mysqldump]
max_allowed_pa​​cket = 16M

[mysql]
no-auto-rehash

[isamchk] key_buffer =
512M sort_buffer_size =
512M
read_buffer = 8M
write_buffer = 8M

[myisamchk] key_buffer =
512M sort_buffer_size
= 512M
read_buffer = 8M
write_buffer = 8M

[mysqlhotcopy]
交互超时

[mysqld_safe]
打开文件限制 = 8192

windows-server-2008 mysql php
  • 3 3 个回答
  • 2791 Views

3 个回答

  • Voted
  1. Best Answer
    Yves Junqueira
    2010-04-20T16:08:20+08:002010-04-20T16:08:20+08:00

    我认为 MySQL 不应该杀死你的操作系统,即使它行为不端。您所描述的对于健康的服务器来说是不正常的。在最坏的情况下,MySQL实例应该死掉,而不是整个服务器。

    您应该调查可能的硬件问题,例如冷却不足或 RAM 芯片损坏。所以你应该先排除这些。

    如果您同意这可能确实是硬件问题,您可以执行以下操作:

    • 改善冷却。也许打开服务器机箱并让它以这种方式运行以证明理论。
    • 刻录 memcheck live CD 并快速检查 RAM。这需要重新启动,但我认为您的服务器每天都在为您提供机会,对吧?;-)

    祝你好运!- 伊夫

    • 2
  2. aduljr
    2010-04-20T12:47:51+08:002010-04-20T12:47:51+08:00

    它应该提高所有使用 innodb 数据库的站点的响应和性能。他们不会因为这些变化而停止工作。我建议在非高峰时段进行调整。配置列表是一个好的开始,但最终您必须对其进行微调以最好地满足您的需求。我利用phpmyadmin的页面来打开服务器。

    我会将 innodb_buffer_pool_size = 2G 更改为 1GB,因为您只有 3GB 的内存并且您需要足够的内存才能运行系统

    • 0
  3. ryandenki
    2011-08-22T18:26:28+08:002011-08-22T18:26:28+08:00

    小心更改 INI 文件。

    您显示的新设置不包括默认字符集等一些重要设置;你只显示更改的部分吗?

    此外,如果您在操作系统崩溃且打开文件为 2048 时收到警告,则将 open-files-limit 更改为 8192 似乎很奇怪。

    • 0

相关问题

  • 从 2003 年迁移到 2008 年 Microsoft 群集技术

  • mod_rewrite 不转发 GET 参数

  • 有什么理由使用 Windows Server 2003 而不是 Server 2008?

  • 更改 PHP 的默认配置设置?

  • 是否可以在单个 W2008 服务器上安装 Exchange Server?

Sidebar

Stats

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

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

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

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve