Articles of mysql

提高mysqldump的速度

有没有任何标志或窍门来加速备份mysqldump ? 这是我们目前使用的: mysqldump –skip-opt –flush-logs –routines –triggers –allow-keywords –create-options –add-locks –quick –single-transaction –extended-insert –all-databases –events –default-character-set=utf8 | bzip2 -c > $BACKUP_PATH/$(date +\%Y_\%m_\%d_\%H_\%M_\%S).sql.bz2 我注意到,即使我们的MySQL服务器有8个内核, mysqldump也在单线程中运行。 目前这个命令需要超过20分钟才能运行。

如果来自具有相同凭证的同一服务器的连接成功,为什么PHPMyAdmin连接会失败?

我有一个托pipe在Rackspace Cloud上的网站。 它运行Joomla 2.5,一些testing脚本和PHPMyAdmin 4.1.6。 Joomla运行在Rackspace Cloud托pipe的数据库。 主机是mysql50-[redacted].wc2.dfw1.stabletransit.com我能够把Joomla的设置,并把它们放在一个简单的PHP脚本,运行mysqli_connect和读取数据库。 但是,我无法在Joomla目录的子文件夹中获得PHPMyAdmin安装来连接。 我PHPMyAdmin的设置和它生成这个configuration文件: $cfg['Servers'][$i]['verbose'] = 'description'; $cfg['Servers'][$i]['host'] = 'mysql50-[redacted].wc2.dfw1.stabletransit.com'; $cfg['Servers'][$i]['port'] = ''; $cfg['Servers'][$i]['socket'] = ''; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['extension'] = 'mysqli'; $cfg['Servers'][$i]['auth_type'] = 'cookie'; $cfg['Servers'][$i]['user'] = ''; $cfg['Servers'][$i]['password'] = ''; 没有其他修改PHPMyAdmin完成。 它似乎与Joomla使用的设置和testing脚本相匹配,但每次连接时,我都会收到#2002 Cannot log in to the MySQL server错误。 无论使用什么用户名/密码,我使用的主机名,还是使用的连接方法/types,都会发生此错误。 PHPMyAdmin的不同之处在于,Joomla和一个简单的mysqli_connect成功的地方连接失败了。

即使在/etc/my.cnf中configuration了mysql.slow.log,也可能是什么原因?

这是/etc/my.cnf的相关部分: [mysqld] slow-query-log = ON long_query_time = 2 log_slow_queries = /var/log/mysql-slow.log 问题是该文件丢失,即使我touch ,没有写在那里。 我试过将日志位置更改为$datadir/mysql-slow.log ,在/etc/my.cnf文件中,它看起来像这样: log_slow_queries = mysql-slow.log 我忘了提及mysql-slow.log文件的用户和所有者是mysql。 但它不工作,任何想法如何解决它? [root@dbsrv ~]# grep slow /etc/my.cnf slow-query-log = ON log_slow_queries = /var/log/mysql/mysql-slow.log slow-query-log = ON log_slow_queries = /var/log/mysql/slow.log [root@dbsrv ~]# ll /var/log/mysql/slow.log ; ll /var/log/mysql/mysql-slow.log -rwxrwxrwx 1 mysql mysql 0 2014-02-04 18:23 /var/log/mysql/slow.log -rwxrwxrwx 1 mysql […]

如何使用MySQL Workbench连接到AWS RDS?

我读过这个文档和其他几个来源,但没有用:我无法连接到MySQL Workbench的MySQL实例。 我可以通过EC2连接到我的RDS实例,但是我不能从它转储,因为它已经过时了: mysqldump Ver 10.13 Distrib 5.1.71, for redhat-linux-gnu (x86_64) 我收到这个消息: mysqldump: Couldn't execute 'SET OPTION SQL_QUOTE_SHOW_CREATE=1': You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OPTION SQL_QUOTE_SHOW_CREATE=1' at line 1 (1064) 我的EC2正在运行Red Hat Enterprise Linux Server release […]

网站安全 – 如何过滤传入的stream量到特定的端口

刚刚在ScanMyServer.com上运行安全testing,结果显示一个中等风险的漏洞: 数据库可从互联网上获得 简介:远程主机正在运行可从Internet访问的数据库服务器。 MySQL服务器正在侦听此端口。 推荐的解决scheme:过滤到这个端口的stream量。 我的问题是我该如何解决它? 谢谢。

Apacheconfiguration不能使用服务器function

我有一个16 GB的内存的Web服务器。 该服务器有很好的stream量,并有300个同时请求的照片。 不幸的是,当这些峰值到达时,查询就会出错或者非常慢。 当我通过free命令查看服务器上使用的内存时,它永远不会超过4-5 GB,CPU负载平均为10%。 total used free shared buffers cached Mem: 16392540 4820632 11571908 0 356120 1948920 -/+ buffers/cache: 2515592 13876948 Swap: 1049596 0 1049596 这是我的Apache 2 preforkconfiguration: StartServers 32 MinSpareServers 32 MaxSpareServers 64 ServerLimit 512 MaxClients 512 MaxRequestsPerChild 0 Timeout 15 KeepAlive On MaxKeepAliveRequests 150 KeepAliveTimeout 3 我想允许Apache使用更多的内存来处理所有的请求,而不是超载。 但即使我改变了configuration,对内存的使用似乎也没有任何影响。 我说我的服务器使用plesk 。 我也使用MySQL数据库,但只包含一个表和一些logging。 […]

在Debian 7下更新MySQL 5.6的php5-mysql

安装MySQL 5.6 for Debian 7(使用ISPConfig)后, (仅供参考,我遵循本教程: http : //xmodulo.com/2013/12/upgrade-mysql-server-debian-ubuntu.html ) 我的PHPMyAdmin给我看这个消息: Your PHP MySQL library version 5.5.35 differs from your MySQL server version 5.6.16. This may cause unpredictable behavior. 我试着用aptitude更新php5-mysql,但正式我已经有了最新版本…我想安装php5-mysql支持MySQL 5.6

如何确定什么内存被释放

我们有一个复杂的LAMP堆栈,在Centos 5上运行各种使用Litespeed而不是Apache的网站。 一旦一切正常运行,系统的内存使用情况相当一致 – 大部分内存被MySQL的caching占用,其余部分用于Litespeed(webserver和lsphp5)以及与操作系统相关的操作。 每隔一段时间,我们都会遇到进程消耗的内存大量减less(下面截图中的凌晨3:55和9:25左右)。 一切都还在继续,事实上,性能提高了 。 我已经检查了OOM杀手,看不到任何被杀死的进程,并且MySQL的caching似乎保持不变(例如MyISAM或InnoDB命中率没有偏差)。 所以,我的问题是,“我们如何确定哪些内存正在被释放(例如它属于哪个进程)?” 请注意,如果我们可以追溯性地进行这种分析(例如,根据历史数据),这是理想的。 不过,我也很高兴find一个解决scheme,我们可以将其用于跟踪未来的内存使用情况。

MySQL Workbench:“Data Dir中的磁盘空间”限于20G

我有一个OVH专用服务器(Ubuntu 12.04,8 GB内存,i3-2130,2×500 GB硬盘),我正在处理MySQLpipe理。 我已经正确安装了MySQL社区服务器5.6.16,它工作正常(它响应一个tomcat服务器所请求的所有查询)。 但是,当我在MySQL Workbench中检查“服务器状态”时,有一个名为“Data Dir中的磁盘空间”的参数,其值为“20G的13G”。 我使用带有Windows 7的笔记本电脑,并且没有分区(一个1TB的硬盘驱动器)来开发和尝试更改本地服务器的副本。 在这里,当我在MySQL Workbench中检查这个参数时,它显示'782.00 GB 911.00 GB可用'。 我目前的my.cnf文件: http : //pastebin.com/Gfw53Lbi 所以,我想这是与分区或OVH格式化硬盘空间的方式有关。 有任何想法吗? Filesystem Size Used Avail Use% Mounted on rootfs 20G 6,3G 13G 33% / /dev/root 20G 6,3G 13G 33% / none 789M 252K 788M 1% /run none 5,0M 0 5,0M 0% /run/lock none 3,9G 0 […]

mysql cli缩进问题

我有一个SQL查询一些非常奇怪的输出: mysql> select concat('abcdef', license_code, 'c') from fulfillment_licenses_list limit 1; +————————————-+ | concat('abcdef', license_code, 'c') | +————————————-+ c |ef06F1-DFD2-4425-83AF-A4EF +————————————-+ 1 row in set (0.08 sec) 正如你所看到的,它缺less了前4个字符(abcd),而应该连接到最后的'c'被以某种方式推到行的开始之前。 什么可能导致这个? 更重要的是,我能做些什么呢? 我如何查询这个表,以产生有意义的,可用的输出,没有奇怪的缩进? 如果我包含任何其他列,输出会变得更加混乱,直到完全无法理解为止。