mysqldump挂起服务器

mysqldump挂起服务器,mysql,centos,mysqldump,centos6,Mysql,Centos,Mysqldump,Centos6,我有个问题。我在我的一台服务器(eAthena)上运行一个开源游戏软件,他们使用MySQL作为首选数据库。但是,每次我运行mysqldump时 mysqldump-u backup-p***eathena>test backup.sql 它最终会挂起服务器。eAthena软件挂起,完成后关闭。这是尺寸问题吗?鉴于数据库的容量是4.7gb,我不知道该怪什么。我的mysqldump是否有其他类型的替代方案 我正在运行CentOS 6 64位MySQL版本5.1.52。您的MySQL安装似乎内存不足。

我有个问题。我在我的一台服务器(eAthena)上运行一个开源游戏软件,他们使用MySQL作为首选数据库。但是,每次我运行mysqldump时

mysqldump-u backup-p***eathena>test backup.sql

它最终会挂起服务器。eAthena软件挂起,完成后关闭。这是尺寸问题吗?鉴于数据库的容量是4.7gb,我不知道该怪什么。我的mysqldump是否有其他类型的替代方案


我正在运行CentOS 6 64位MySQL版本5.1.52。

您的MySQL安装似乎内存不足。检查/etc/my.cnf或/etc/mysql/my.cnf(或CentOS上的任何位置)

增加表缓存和键缓冲区大小。请参阅mysql安装附带的confs示例:
my Greg.cnf'、
my large.cnf'、
my Middle.cnf'和
my small.cnf'。将您的对话与此进行比较:

[mysqld]
# Reduced to 200 as memory will not be enough for 500 connections.
# memory=key_buffer+sort_buffer_size+read_buffer_size)*max_connections
# which is now: 64 + (1 + 1) * 200 = 464 MB
# max_connections = approx. MaxClients setting in httpd.conf file
# Default set to 100.
max_connections = 100
max_allowed_packet = 1M
max_connect_errors = 10
key_buffer = 512M # 128M for 1GB, 256M for 2GB, 512 for 4GB
join_buffer_size = 4M # 1M for 1GB, 2M for 2GB, 4M for 4GB
read_buffer_size = 4M # 1M for 1GB, 2M for 2GB, 4M for 4GB
sort_buffer_size = 2M # 1M for 1GB, 2M for 2GB, 4M for 4GB
# myisam_sort_buffer_size used for ALTER, OPTIMIZE, REPAIR TABLE commands.
myisam_sort_buffer_size = 32M
# Checked opened tables and adjusted accordingly after running for a while.
table_cache = 1024
# thread_concurrency = 2 * (no. of CPU)
thread_concurrency=4
thread_cache_size = 286
# log slow queries is a must. Many queries that take more than 2 seconds.
# If so, then your tables need enhancement.
log_slow_queries=/var/log/mysqld.slow.log
long_query_time=2
# Reduced wait_timeout to prevent idle clients holding connections.
wait_timeout = 10
connect_timeout = 10
interactive_timeout = 10
# Enable it for vast improvement and it may be all you need to tweak.
query_cache_limit = 1M
query_cache_size = 128M
query_cache_type = 1
[mysqld_safe]
open_files_limit = 8192
[mysqldump]
quick
max_allowed_packet = 16M
[myisamchk]
key_buffer = 256M # 64M for 1GB, 128M for 2GB, 256 for 4GB
sort_buffer = 256M # 64M for 1GB, 128M for 2GB, 256 for 4GB
read_buffer = 64M # 16M for 1GB, 32M for 2GB, 64M for 4GB
write_buffer = 64M # 16M for 1GB, 32M for 2GB, 64M for 4GB
[mysqlhotcopy]
interactive-timeout

在重试之前别忘了重新启动mysql服务器

假设它是64位mysql,4.7gb应该是(长)眨眼的功夫。桌子是什么类型的?如果它们是myisam,您可以尝试使用
检查表
修复表
检查损坏情况。这确实有效,但我认为为了节省空间/带宽,我不打算备份不必要的日志/表(这也解决了我的问题)。添加
--单事务
对我来说很有效