Questions tagged «mysql»

MySQL是Oracle拥有的开源数据库。

3
MySQL:表被标记为崩溃
磁盘已满后,我尝试备份服务器上的一个MySQL数据库时出现以下错误: [root@mybox ~]# mysqldump -p --result-file=/tmp/dbbackup.sql --database myDBname Enter password: mysqldump: Got error: 145: Table './myDBname/myTable1' is marked as crashed and should be repaired when using LOCK TABLES 一点调查表明,两个表都有此问题。 需要做什么来修复损坏的桌子?
9 mysql 

7
MySQL:在14亿条记录上创建索引
我有一张有14亿条记录的表。表结构如下: CREATE TABLE text_page ( text VARCHAR(255), page_id INT UNSIGNED ) ENGINE=MYISAM DEFAULT CHARSET=ascii 要求是在列上创建索引text。 该表的大小约为34G。 我试图通过以下语句创建索引: ALTER TABLE text_page ADD KEY ix_text (text) 经过十个小时的等待,我终于放弃了这种方法。 有什么可行的解决方案吗? UPDATE:该表不太可能被更新,插入或删除。之所以要在该列上创建索引,text是因为这种SQL查询将经常执行: SELECT page_id FROM text_page WHERE text = ? 更新:我已经通过分区表解决了这个问题。 桌子被分成40列text。然后在表上创建索引大约需要1个小时。 当表大小很大时,MySQL索引的创建似乎变得很慢。分区将表缩小为较小的主干。
9 mysql  indexing 

4
MySQL 5.1或5.5?
版本5.1和5.5之间有显着差异吗? 该服务器用于托管中型vBulletin论坛。 5.1的主要优点是可以通过apt-get获得。
9 mysql 

2
无法创建/写入文件'/tmp/#sql_xxxx.MYI'(错误代码:13)
我已经安装了Debian Lenny,PHPmyadmin和postfix。 当使用PHPmyadmin GUI并使用数据访问任何表时,我得到: 无法创建/写入文件'/tmp/#sql_xxxx.MYI'(错误代码:13) 做恐怖13说: OS error code 13: Permission denied 我发现tmpdir很喜欢: mysqladmin -p variables | grep -w tmpdir | tmpdir | /tmp 现在,这意味着mysql无法写入/ tmp。授予:777的权限可以解决此问题。但是我不觉得我必须这样做。有更好的方法/解决方法吗? 我应该在中更改值tmpdir /etc/mysql/my.cnf吗?
9 mysql  debian 

9
防止对MySQL的暴力攻击?
我需要为MySQLd打开网络,但是每次这样做,服务器都会被强行淘汰。一些卑鄙的密码猜测脚本开始在服务器上运行,在端口3306上打开连接并永久尝试随机密码。 我该如何阻止这种情况的发生? 对于SSH,我使用denyhosts,效果很好。有没有办法使denyhosts与MySQLd一起使用? 我也考虑过更改MySQL正在运行的端口,但这并不理想,只是一个权宜之计(如果他们发现了新端口,该怎么办?) 还有其他想法吗? 如果有所不同,我在FreeBSD 6.x上运行MySQL5.x。

2
将大表从MyISAM转换为Innodb
我有一个表,该表包含约3亿行MyISAM格式,我想转换为Innodb 我最初的目标是通过将表架构更改为具有更简单的索引来减少使用量。我转储了所有表,将其删除,用更少的索引重新创建了表,现在重新导入。但是,我忘记指定它应该是innodb而不是myisam。 我可以只做标准的ALTER TABLE ... ENGINE = INNODB吗?如此庞大的桌子,我应该注意什么特别的地方? 数据导入操作大约需要12个小时-我不愿意再次这样做。因此,为什么我只想转换它。
9 mysql  innodb 

2
mysqldump提示在shellscript中输入密码
我写了一个简单的shell脚本来转储特定的mysql数据库。问题是即使我提供了密码,它也会提示我输入密码。如果这很重要,则mysql db是5.0.27版。这是我正在使用的特定行。 $MYSQLDUMP -u backup -p$MyPass $DB > $DEST/$FILE 我尝试了几种变体,但无济于事。
9 mysql  shell 


5
导入大型MySQL转储文件时出错,该文件包含Windows中的二进制BLOB
我试图将我从托管公司获得的MySQL转储文件导入Windows开发计算机,但遇到了问题。 我是从命令行导入的,并且出现了一个很奇怪的错误: 第3118行的错误2005(HY000):未知的MySQL服务器主机'╖?*á±dÆ╦N╪Æ·h ^ ye“π影片i╪Z +-$▼₧╬Y.∞┌|↕╘l∞/ l ╞⌂î7æ▌X█XE.º[[;╦ï♣éµ♂º╜┤║].♂┐φ9dë╟█'╕ÿG∟═0à¡úè♦╥↑ù♣♦¥'╔NÑ'(11004) 我附上屏幕截图是因为我假设二进制数据将会丢失... 我不确定是什么问题,但是两个潜在的问题是文件的大小(2 Gb)并没有太大,但是两个都不小,另一个是许多表都有它们中的JPG图像(这就是文件大部分为2Gb的原因)。 另外,转储是在Linux机器上进行的,我正在将其导入Windows,不确定是否会增加问题(我知道应该不会) 现在,该二进制垃圾就是为什么我认为文件中的图像可能是一个问题,但是过去我已经能够从同一托管公司导入类似的转储,所以我不确定这可能是问题所在。 同样,鉴于文件的大小,尝试查看该文件(尤其是3118行)是不可能的(我对使用grep,sed等Linux命令行工具不是很方便)。 该文件可能已损坏,但是我不确定如何检查它。我下载的是一个.gz文件,我用WinRar对其进行了“测试”,它说看起来还可以(我假设gz具有某种CRC)。如果您能想到一种更好的测试方法,我很乐意尝试。 任何想法可能会发生什么/如何克服这个错误? 我并不是特别重视数据,因为我只想将此数据作为开发人员的副本,因此,如果我不得不丢失一些记录,只要架构保持完好无损,我就可以了。 谢谢! 丹尼尔
9 mysql  import  binary 

4
MySQL表不支持优化
我的Wordpress表似乎需要优化,因此我查看了命令OPTIMIZE TABLE。当我运行命令时,我得到以下结果: 表不支持优化,而是执行重新创建+分析 这些表是使用Wordpress 2.91安装程序构建的,根本没有进行任何修改。 这正常吗? 如何优化数据库以使事情正常运行?


3
如何根据用户位置将用户重定向到其他服务器?
我有一个使用ASP.NET开发的网站,而我的数据库是MySQL。目前,它托管在USA Servers中。但是,当我尝试在印度附近访问它时,动态内容的加载速度太慢。这是可以接受的,因为请求必须转到世界的另一端。在美国,它的速度非常快。我已经将该站点与cloudflare CDN相关联。但是CDN对于静态内容很有用。我的每一页几乎都有动态内容。 所以我想扩展这个网站。因此,如果一个请求来自美国,我想处理来自美国服务器的请求,如果一个请求来自ASIA,我希望它处理一个来自ASIAN服务器的请求。但是请记住,无论将它们重定向到何处,两台服务器上的内容都应该相同。(两个服务器应该同步) 那么如何实现这种架构呢? Google,Facebook,Yahoo如何做到这一点?他们如何在全球范围内服务?我认为他们在每个大洲都有数据中心。它们如何彼此同步?

5
错误原因:无效(旧?)表或数据库名称“丢失+找到”
我的MySQL日志显示重复的错误: 141223 5:47:21 [ERROR] Invalid (old?) table or database name 'lost+found' 我有一个名为的数据库,#mysql50#lost+found但似乎无法删除它。 mysql> show databases; +---------------------+ | Database | +---------------------+ | information_schema | | maindatabas | | maindatabas_help | | maindatabas_tracker | | gitlabhq_production | | locations | | #mysql50#lost+found | | mysql | | osticket | | performance_schema | …
8 linux  mysql 

3
是否可以从MySQL服务器提取上个月的值并从这些值构建新数据库?
我有一个任务来构建开发虚拟机模板。 我需要将我公司产品中每一种的MySQL数据库添加到服务器中,以便新开发人员能够为每种产品进行开发。 大多数数据库小于1GB。 但是我有一些巨大的数据库(大约160G)-但是我要创建的模板的大小有限,并且在其中添加160GB的DB是不合理的。 因此,我正在尝试寻找一种正确的方法,例如从这个庞大的数据库中提取上个月的值,并将其添加到服务器中,以便开发人员能够“感觉”在该数据库上工作的感觉。 有可能做这样的事情,如何做?谢谢! 编辑: 不幸的是,没有单独的主数据库服务器可以容纳所有开发数据库,​​也没有必要定期更新数据,我只需要提供与生产服务器中相同的数据(在随机时间段内)即可。新开发者的沙盒环境。
8 mysql  centos5 

3
中止连接(读取通信数据包时出错)
mysql error.log显示 [Warning] Aborted connection 320935 to db: '...' user: '...' host: '...' (Got an error reading communication packets) 客户端得到的是: Lost connection to MySQL server at 'reading initial communication packet', system error: 111 Lost connection to MySQL server at 'reading authorization packet', system error: 0 and after a while: Host …
8 mysql 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.