这是用例: 我在一个盒子上build立了一个SaaS系统(开发环境)。 我把所有东西都移到了运行Ubuntu 10.10的云环境中。 一台服务器运行应用程序,另一台运行数据库。 基本思想是运行数据库的服务器只能由应用程序和pipe理员的机器来访问,他们都有正确的RSA密钥。 我的问题: 使用防火墙阻止除MySQL以外的所有端口的访问,或跳过防火墙/ iptables,并完全禁用所有其他服务/端口是更好的做法吗? 另外,我应该在非标准端口上运行MySQL吗? 这个数据库将持有相当敏感的信息,我想确保我正在尽一切可能来妥善保护它。 提前致谢。 我在这里读了一段时间,但这是我问的第一个问题。 我会尽力回答一些=)
从一个关于MySQL服务器安全最佳实践的问题提示,我已经通过这个列表(有一些小的改动)来正确地保护我的服务器数据库服务器: http://www.greensql.net/publications/mysql-security-best-practices 在步骤10中,我被告知使用chroot来更改mysql用户的根目录,但是提供了很less的细节,我不知道从哪里开始。 有谁知道一个很好的资源,通过步骤来正确地创build一个Ubuntu 10.10 chrooted环境?
我inheritance了一个mysql服务器,所以我开始运行MySQLTuner.pl脚本。 我不是一个MySQL专家,但我可以看到,这里肯定是一团糟。 我不想追求每一个需要修复和调整的东西,但我确实想要抓住主要的低挂果实。 系统总内存为:512MB。 是的,我知道这是低的,但这是我们暂时的。 这是剧本必须说的: General recommendations: Run OPTIMIZE TABLE to defragment tables for better performance MySQL started within last 24 hours – recommendations may be inaccurate Enable the slow query log to troubleshoot bad queries When making adjustments, make tmp_table_size/max_heap_table_size equal Reduce your SELECT DISTINCT queries without LIMIT clauses Increase table_cache gradually to […]
作为这个问题的后续,我试图编辑MySQL服务的“my.ini”configuration文件。 我已经停止服务,打开文件,进行编辑,并试图保存 – 在这一点上,我得到一个错误,说“拒绝访问”。 在Windows 7上。 问题,反馈,build议 – 只是评论,谢谢!
我有一个MySQL主从设置。 一位大师 一个奴隶; 很多数据库。 我正在将应用程序从第三方移到此设置。 他们提供了一个数据和数据库结构的mysqldump文件。 它包含一个带有innodb表的单个数据库。 转储文件在主服务器上加载得很好。 但是,当复制到奴隶,从属挂起一个外键错误。 似乎奴隶忽略了mysqldump中的“设置外键检查”。 如何在不中断复制的情况下加载这个东西?
目前,我们有一个35GB的数据库,并运行在具有2GB内存的虚拟机上。 预计该数据库将持续以每天3至4Gb的速度增长。 什么是这种设置build议的硬件规格? CPU和RAM分配等 我也创build了一个关于mysql缩放的类似问题。 扩展MySQL数据库但是由于我专注于MySQL优化,还没有尝试过这些build议。
所以我在CentOS上有这个VPS。 几个月前,我安装了apache2,mysql和其他一些东西,来主办wordpress博客。 现在,由于某种原因,MySQL服务已经closures,我无法重新启动它。 “哪个mysql”返回“/ usr / bin / mysql”似乎确认它确实被安装了 “/etc/init.d/mysql”返回“-bash:/etc/init.d/mysql:没有这样的文件或目录” “service mysql start”返回“-bash:service:command not found” 交换mysqld的mysql在最后两点没有做任何改变 只有与mysql有关的日志文件在/ var / log文件夹中被命名为mysqld.log.rpmsave并且为空 实际上,我是程序员,我完全被这种情况所困惑。 任何想法? – 编辑 – 感谢您的答案家伙。 我试过Caleb和lain的build议,不幸的是/sbin/service mysql start或/sbin/service mysqld start返回unrecognized service 。 至于rpm -qa | grep mysql的结果 rpm -qa | grep mysql :php-mysql-5.3.3-1.el5.remi mysql-libs-5.1.53-1.el5.remi mysql-5.1.53-1.el5.remi remi是我findPHP的新版本(从5.1.X到5.3)的回购。
mysql> explain SELECT * -> FROM (`items`) -> WHERE `states` = 'A' -> ORDER BY `updated_date` desc -> LIMIT 20520, 40; +—-+————-+——–+——–+—————————-+———————+———+———-+——-+————-+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +—-+————-+——–+——–+—————————-+———————+———+———-+——-+————-+ | 1 | SIMPLE | items | ref | states_updated_date,states | […]
我的一个网站正在遭到一些IP的攻击。 我甚至不知道它是不是ddos,我只知道它填写我的应用程序的日志超过一天,然后服务器崩溃,由于mysql的内存使用情况我猜(我收到一个webmin的自动电子邮件说mysql掉了) 我可以访问Iptables,但是我不确定是否希望它被填充阻塞的ips。 我只是想知道这种情况下最常见的做法是什么,我对服务器pipe理相对来说比较陌生。 我正在使用Linux Centos,Apache,Php和MySQL
我有两个数据库,一个在Windows服务器上,一个在Linux服务器上,我把数据库移动到Linux服务器,但我面对机智的一个问题,在Windows时,作出select的例子 SELECT * FROM tabledata 工作很好。 但Linux不工作,因为原来的表名是tableData 有没有什么办法来configurationMySQL的大小写不敏感?