Articles of mysql

有什么办法估计数据库的大小?

我目前打算在20GB的服务器上运行我的服务器。 服务器主要是有一个LAMP堆栈,与Ubuntu的。 数据将大部分保存在一个大表(大约50列)问题是,考虑到其他服务器的东西大约使用1 GB,这个表可以容纳多less数据? 该表格包含大约6个variables,每个约64个字符。 大约10个整数值和其余值是二进制值。 这可以装多less行? 帮助是高度赞赏

使用Postfix将收到的电子邮件保存在MySQL数据库中

我只是安装了后缀,并configuration它的权利,我想.. 现在我的目标是,接受所有传入的邮件,并将其存储在我的MySQL数据库中的每一个,只要它到达我的服务器。 我只需要存储任何电子邮件的正文,并不需要任何垃圾邮件过滤程序,因为我的服务器所做的只是接受所有邮件正文,并通过那些从那些获取特定的数据工作。 这些电子邮件将从他们获得数据后被删除,所以不要担心垃圾邮件或其他任何东西。 v-server运行Ubuntu,我也有自己的域名。 即时通讯真的是新的Ubuntu的,所有的邮件服务器的事情,但已经尝试了3个星期,现在使其工作..没有真正的工作。 只是让我知道你会怎么做:)

在MySQL中添加外键约束是否会导致表重build?

我需要修改一个大表来添加一个外键。 添加约束是否会导致表重build? 被引用的表已经存在,并且在列上有一个索引。

如何使用mysql的客户端证书

这涉及到我尝试使用SSLencryption连接到MySQL服务器上的客户端证书。 一些基础知识:服务器是Ubuntu 12.04运行mysql 14.14 Distrib 5.1.69。 客户端是MacOS 10.8.5与MySQL Ver 14.14 Distrib 5.5.25a 有很多方法可能导致这个设置错误,正如许多人在这里和networking上的其他地方所见证的。 在这种情况下,似乎服务器端configuration正确,因为可以使用类似的命令 mysql –ssl-ca=CAcert.pem -u user -ppassword -h host.com -e '\s 获得一个使用密码的报告。 但是,如果我添加一个客户端证书和密钥,如 mysql –ssl-ca=CAcert.pem –ssl-cert=clientCert.pem –ssl-key=keyFile -u user -ppassword -h host.com -e '\s' 这会产生非信息性错误消息'错误2026(HY000):SSL连接错误:错误:00000001:lib(0):func(0):reason(1)'。 服务器错误日志中没有任何内容。 我已经检查过客户端证书可以通过opensslvalidation – 用途sslclient -CAfile CAcert.pem clientCert.pem 返回OK。 CAcert.pem和clientCert.pem的规范名称是不同的。 CAcert.pem,clientCert.pem和keyFile都是用户可读的(甚至使关键的世界不可读)。 不幸的是,考虑到客户端和服务器之间由mysql使用的协议,在这里不可能使用openssl客户端来进行任何debugging。 有什么问题是什么build议? 或者在客户端获取更多debugging信息的方法?

my.cnf和php.ini出现问题 – 使用mysql tuner

我的服务器运行良好,直到Plesk最近更新,现在一直很慢。 我的服务器技术不得不重buildApacheconfiguration文件,并且自从网站速度缓慢。 服务器是1and1的XL8专用盒子。 它有16GB的内存和一个8核心的CPU。 该服务器包含2个相当繁忙的vbulletin论坛和一些较小的网站。 这是我设置的当前my.cnf – [mysqld] #bind-address=127.0.0.1 #skip-bdb local-infile=0 max_connections=90 open_files_limit=2050 datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 query_cache_limit = 1M query_cache_size = 15M join_buffer_size = 512K read_buffer_size = 1M tmp_table_size = 3024M thread_cache_size = 8 table_cache = 450 innodb_buffer_pool_size = 540M key_buffer_size = 32M table_definition_cache […]

mysql缓慢的查询不写入日志

我在mysql中有以下缓慢的查询信息设置。 SHOW VARIABLES LIKE '%SLOW%'; Variable_name Value log_slow_queries ON slow_launch_time 2 slow_query_log ON slow_query_log_file /var/log/mysql/slow-queries.log 日志文件具有以下的权限: -rwxr-xr-x 1 root root 0 Sep 11 14:31 slow-queries.log my.cnf文件如下所示: back_log = 2000 slow_query_log = 1 slow_query_log_file = 1 long_query_time = 1 general_log = 1 log-slow-queries=/var/log/mysql/slow-queries.log 从mytop我可以看到,我有慢查询,但我没有看到任何写入日志。

诊断零星的MySQL错误

我有一些C ++应用程序通过Ubuntu 10.04上的unixODBC访问我们的MySQL数据库。 在过去的几个星期里,每隔几个星期就会有一次这样的错误出现在我们的错误日志中: [unixODBC] [MySQL] [ODBC 3.51驱动程序]在'读取初始通信数据包'时丢失与MySQL服务器的连接,系统错误:9 它起源于我在C ++代码中使用的ODBC库,显然来自ODBC驱动程序。 否则,系统工作正常,每天处理数千个查询。 任何人都可以阐明这可能表明什么,如何诊断,接下来要检查什么? 有谁知道究竟这个错误代码来自哪里,我怎么可能会看什么“9”的意思? 编辑:我也将添加这是一个本地服务器,即MySQL服务器运行在与C ++代码相同的机器上。

在已经进入只读模式的debian系统上运行mysqldump

我的一个旧的Debian系统最近由于一些磁盘问题而使主硬盘进入只读模式。 我在服务器上有一个MySQL数据库,我想在尝试修复硬盘之前进行备份。 幸运的是,我有另一个驱动器挂载不是只读模式,所以我应该能够运行mysqldump将数据库转储到它。 但是,我得到下面的错误运行mysqldump : mysqldump: Couldn't execute 'show fields from `xxx`': Can't create/write to file '/tmp/#sql_b96_0.MYI' (Errcode: 30) (1) 这显然是由于主磁盘处于只读模式。 有没有办法解决?

安装mytop时出错:需要:libmysqlclient.so.16

我的mysql的CPU使用率最近一直很高 所以我想安装mytop来监视数据库 当我尝试与百胜安装它我得到这个: yum -y install mytop –> Finished Dependency Resolution Error: Package: perl-DBD-MySQL-4.013-3.el6.x86_64 (base) Requires: libmysqlclient.so.16()(64bit) Error: Package: perl-DBD-MySQL-4.013-3.el6.x86_64 (base) Requires: libmysqlclient.so.16(libmysqlclient_16)(64bit) You could try using –skip-broken to work around the problem You could try running: rpm -Va –nofiles –nodigest 我有MySQL 5.5.x安装,显然 libmysqlclient.so.16 is provided by MySQL 5.1 packages 所以我该怎么做 ? 我应该降级MySQL版本? 这似乎不合逻辑。 有没有其他工具,我可以使用,而不是mytop […]

无法启动生产MySQL服务器。 没有日志消息

这是我们为客户pipe理的生产实例(EC2)。 停机时间已经5个小时了。 我完蛋了。 故事 今天早上我发现我们的一个客户mysqld进程处于死亡状态。 我做了sudo service mysql start并启动并运行。 日志告知,这是由于桌面崩溃发生的。 通过互联网上的一些参考,我执行了以下命令: # mysqld was running $ mysqlrepair -A –auto-repair $ mysqlrepair -A -o # By the time the following command was executed, mysqld had stopped $ mysqlrepair -A -c 从那以后,以下命令拒绝启动mysqld $ sudo service mysql start start: Job failed to start $ sudo mysqld –verbose $ […]