标签: mysql

专用服务器上大型 Magento 站点的最佳 MySQL my.cnf 设置

我们的专用服务器正在运行一个大型 Magento 商店,其中有一个大约 250MB 的 MySQL 数据库。

服务器规格被列为具有 5 个 Xeon 2Ghz 处理器(4MB 缓存)和 12GB 内存。

我原以为上述规范足以非常快速地运行 Magento,但是尽管该站点并不慢,但它确实没有应有的那么快。

当前 MySQL my.cnf 文件如下:

skip-innodb

ft_min_word_len=3    
query_cache_limit = 4M    
query_cache_size = 16M ## 32MB for every 1GB of RAM    
query_cache_type = 1    
max_user_connections = 50    
max_connections = 50    
interactive_timeout = 300    
wait_timeout = 200    
connect_timeout = 200    
thread_cache_size = 32    
key_buffer_size = 64M ## 128MB for every 1GB of RAM    
join_buffer_size = 1M    
max_connect_errors = 20    
max_allowed_packet = 12M    
table_cache = 1024 …
Run Code Online (Sandbox Code Playgroud)

mysql optimization innodb centos magento

0
推荐指数
1
解决办法
2万
查看次数

动态更改 innodb_buffer_pool_size

我想知道是否可以即时更改innodb_buffer_pool_size

看起来缓冲池已在我的服务器上过度分配,现在正在交换。我已经在从服务器上更改了这个值,重新启动了 MySQL 守护进程,现在一切看起来都很好 - 但是我不能让主服务器脱机

我不确定是否至少可以刷新 inndb 缓冲区以释放一些内存?

# ps aux --sort -vsz | head -n2
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
mysql     2064 14.6 93.8 17369060 15328044 ?   Sl   Jul22 7096:48 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/log/mysql/mysql-error.log --pid-file=/var/lib/mysql/mysql.pid --socket=/var/lib/mysql/mysql.sock --port=3306

# free -m
                 total       used       free     shared    buffers     cached
    Mem:         15949      15786        163          0          4        104
    -/+ buffers/cache:      15677        272
Swap:         4095        346       3749
Run Code Online (Sandbox Code Playgroud)

mysql innodb

0
推荐指数
1
解决办法
1万
查看次数

MySQL 坏了;我怎样才能保存一些表?

由于某种原因,我的 MySQL 无法再连接。我正在运行三个 WordPress 网站,我需要保存表格。这才是我真正真正真正关心的。

这是问题所在:

root@dev:/var/log/mysql# mysql ERROR 2002 (HY000): 无法通过 socket '/var/run/mysqld/mysqld.sock' 连接到本地 MySQL 服务器 (2)

用phpMyAdmin登录时也显示同样的错误..

所有网站都显示此错误:

建立数据库连接时出错

mysql sql wordpress

0
推荐指数
1
解决办法
111
查看次数

优化网站性能的方法 WordPress、Amazon EC2 Apache 和 RDS MySQL

我有 6 个 WordPress 网站在 1 个 EC2 实例上运行。所有网站都连接到 1 个相同 RDS 实例中的数据库。

今天早些时候,最大网站的流量达到顶峰,RDS 实例陷入瓶颈——CPU 利用率在一个多小时内达到 100%。它影响了我所有的网站,因为它们需要永远加载。

为了防止此类问题再次发生,以下哪项最重要,因此我首先要投入时间和精力?
(我将在以后工作,我现在只需要优先考虑)

  • 改进所有网站的缓存
  • 微调数据库服务器
  • 微调我的 Apache 服务器

对我网站的用户体验有何影响?一些快速搜索表明我应该限制到我的 Web 服务器的并发连接数,但这不会阻止用户访问我的网站吗?

更多背景:

  • 我最大的网站每月有 14 万次访问和 66 万次页面浏览。其他 5 个网站加起来应该比这少得多。
  • 我使用大型 EC2 实例作为 Web 服务器
  • 我使用中型 RDS 实例作为数据库服务器

我已经做了什么:

  • 使用 W3 Total Cache 插件为大多数网站进行缓存,尤其是最大的网站(在缓存方面,我几乎无法为最大的网站做任何其他事情)

我是在浪费资源,还是根本没有足够的资源用于我的网站——或者更确切地说,我如何自己回答这个问题?

mysql website wordpress amazon-ec2 amazon-rds

0
推荐指数
1
解决办法
1598
查看次数

在ubuntu 12.10中安装mysql5.6.12报错:/etc/mysql/conf.d丢失

我正在尝试在 ubuntu 12.10 中安装 mysql。从http://dev.mysql.com/downloads/mysql/下载了“MySQL-5.6.12-1.linux_glibc2.5.i386.rpm-bundle” 。提取它并尝试使用rpm -i MySQL-server-5.6.12-1.linux_glibc2.5.i386. 既然不可能,就用sudo alien -i MySQL-server-5.6.12-1.linux_glibc2.5.i386。对目录 MySQL-5.6.12-1.linux_glibc2.5.i386.rpm-bundle 中的所有其他文件执行相同操作。然后在终端中尝试“mysql”命令,但它显示错误 强调文本 mysql: Can't read dir of '/etc/mysql/conf.d/' (Errcode: 2 - No such file or directory)Fatal error in defaults handling. Program aborted

检查 /etc/mysql 目录。里面唯一的文件是 my.cnf 内容:

#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
# 
# One …
Run Code Online (Sandbox Code Playgroud)

mysql ubuntu-12.10

0
推荐指数
1
解决办法
2万
查看次数

更改绑定地址后,MySQL 服务器将无法运行

为了允许来自外部的连接,我编辑将默认值/etc/mysql/my.cnf更改为. 但是更改后,mysql 服务将无法启动。当我检查 mysql 错误日志时,它有这个:-bind-address127.0.0.154.200.xx.xx

131030 12:27:53 [Note] Server hostname (bind-address): '54.200.xx.xx'; port: 3306
131030 12:27:53 [Note]   - '54.200.xx.xx' resolves to '54.200.xx.xx';
131030 12:27:53 [Note] Server socket created on IP: '54.200.xx.xx'.
131030 12:27:53 [ERROR] Can't start server: Bind on TCP/IP port: Cannot assign requested address
131030 12:27:53 [ERROR] Do you already have another mysqld server running on port: 3306 ?
131030 12:27:53 [ERROR] Aborting
Run Code Online (Sandbox Code Playgroud)

服务器位于 Amazon EC2 上,运行 Ubuntu 12.04 LTS。知道问题是什么吗?

ubuntu@ip-172-31-xx-xxx:~$ ifconfig
eth0      Link …
Run Code Online (Sandbox Code Playgroud)

mysql

0
推荐指数
1
解决办法
2万
查看次数

无法在 Ubuntu 上安装 mysqldump

另一位技术人员最近在我们的 LAMP 服务器上重新安装了我们的 mysql,现在我不能再使用 mysqldump 了。

# mysqldump
The program 'mysqldump' is currently not installed.  You can install it by typing:
apt-get install mysql-client-5.5
Run Code Online (Sandbox Code Playgroud)

所以我这样做:

apt-get install mysql-client-5.5
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 percona-server-server-5.5 : Depends: percona-server-client-5.5 (>= 1:5.5.36-rel34.2-648.precise) but     it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages …
Run Code Online (Sandbox Code Playgroud)

mysql

0
推荐指数
1
解决办法
5873
查看次数

检查远程mysql查询是否成功 - bash

使用 bash 脚本执行远程 MySQL 查询时,如何知道该命令是否成功。在本地,它会返回一个退出代码。然而,远程它似乎发送查询,如果它能够连接到远程 MySQL 数据库,它就认为它成功了。有什么办法可以在远程执行时查看输出,比如在本地执行时。这是脚本:

#!/bin/bash

RemoveID=`mysql -u root -proot -h 192.168.1.56 -e "delete from table where ID = '$1'"`
Run Code Online (Sandbox Code Playgroud)

mysql bash

0
推荐指数
1
解决办法
2310
查看次数

我更改了 mysql root 密码,但无法访问它。密码包含一些字符

使用此命令我更改了 root 密码

mysqladmin -u root 密码 fg$pkh@567fghu

现在我无法访问mysql。这是因为 mysql 解析的字符不是我期望的吗?
此外,我完全删除并安装了 mysql,问题仍然存在。
如何删除mysql以便摆脱密码?

mysql password

0
推荐指数
1
解决办法
549
查看次数

大量内存但仍在交换

这是我的服务器内存图 在此处输入图片说明

您可以在图中看到,每次我重新启动 mysqld 时,swap 都会变为零。但随着时间的推移而增加。
如果我将 innodb 缓冲池放在大尺寸交换中,则上升速度会更快,如果我降低它,则交换上升会更慢。

在此处输入图片说明

mysql memory swap

0
推荐指数
1
解决办法
727
查看次数