Questions tagged «mysql»

MySQL的所有版本(不是Microsoft SQL Server)。如果与此问题相关,还请添加特定于版本的标记,例如mysql-5.7。

2
使用索引日期时间列的MySQL性能问题
我试图解决以下问题大约一个小时,但仍然没有解决任何问题。 好的,我有一张桌子(MyISAM): +---------+-------------+------+-----+-------------------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+-------------------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | http | smallint(3) | YES | MUL | 200 | | | elapsed | float(6,3) | NO | | …

3
最有效的UUID列类型是什么
为了存储128位UUID,有多种存储选项: 字节[16]列 两个bigint / long(64位)列 CHAR(36)列-32个十六进制数字+ 4个破折号。 UUID数据库特定的列(如果数据库支持) 从索引的角度来看,哪些是最有效的?如果数据库不支持专用的uuid类型,则1,2,3中的哪一个是最佳候选者?

2
如何每天确定MySQL查询?
我正在研究从MySQL到NoSQL DBaaS的重大转变,但是在尝试预测费用时遇到了一个问题。本质上,我无法弄清楚我当前的MySQL服务器每天要处理多少个查询,以尝试估计Cloudant使用的请求数,每100个PUT,POST和DELETE收取$ 0.015的费用,每500 GET收取$ 0.015的费用和头。 我已经找到了许多有关使用SHOW STATUS和SHOW GLOBAL STATUS来获取MySQL自身收集的统计信息,但是没有时间表。 例如,SHOW GLOBAL STATUS返回以下内容: Queries | 13576675 很好,除了我不知道包裹那个数字的时间表。1300万次查询何时?每月?年?从时间开始? MySQL文档并没有详细说明: 查询 服务器执行的语句数。与Questions变量不同,此变量包括在存储的程序中执行的语句。它不计算COM_PING或COM_STATISTICS命令。这个变量是在MySQL 5.0.76中添加的。 在此先感谢您的帮助。
15 mysql 

1
从ibd文件中没有ibdata1的数据文件夹中恢复MySQL数据库
我的WAMP目录意外地被另一个用户删除。MySQL中仅数据文件夹可用。并且,因为只有数据库文件夹(带有数据库名称的“ \ bin \ mysql \ mysql5.6.12 \ data \”中的文件夹)可用。“ \ bin \ mysql \ mysql5.6.12 \ data \”的根目录中包括“ ibdata1 ”的所有文件也将被删除。 数据库文件夹仅包含具有以下扩展名的文件。 * .frm,*。ibd 和“ db.opt”文件。 如何恢复数据库? 我已经尝试恢复bdata1。但是,无法取回它。并且,某些数据库也包含MYISAM。



3
无法删除“ GRANT USAGE”
我正在测试一些东西,并添加了: grant usage on statistics.* to cptnotsoawesome@localhost identified by 'password'; 所以现在当我做 show grants for cptnotsoawesome@localhost; 我可以看到其中之一是: Grants for cptnotsoawesome@localhost ---------------------------------- GRANT USAGE ON *.* TO 'cptnotsoawesome'@'localhost' IDENTIFIED BY PASSWORD 'somePEW-PEWstring' 现在,我想删除它,因为我认为这是安全隐患,因此我执行以下操作: REVOKE USAGE ON *.* FROM 'cptnotsoawesome'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; 但它仍显示USAGE授予在授予列表中。 Grants for cptnotsoawesome@localhost ---------------------------------- GRANT USAGE ON …


5
如何在大表上使用LEFT JOIN优化非常慢的SELECT
我正在谷歌搜索,自我教育和寻找解决方案数小时,但没有运气。我在这里找到了一些类似的问题,但不是这种情况。 我的桌子: 人(约1000万行) 属性(位置,年龄,...) 人与属性之间的链接(M:M)(约4000万行) 完整转储〜280MB 情况: 我尝试person_id从某些位置(location.attribute_value BETWEEN 3000 AND 7000),性别(gender.attribute_value = 1),出生年份(bornyear.attribute_value BETWEEN 1980 AND 2000)和眼睛颜色(eyecolor.attribute_value IN (2,3))选择所有人的身份()。 这是我的询问女巫用了3〜4 分钟。我想优化: SELECT person_id FROM person LEFT JOIN attribute location ON location.attribute_type_id = 1 AND location.person_id = person.person_id LEFT JOIN attribute gender ON gender.attribute_type_id = 2 AND gender.person_id = person.person_id …

3
为什么MySQL甚至对这个顺序强制也忽略索引?
我运行EXPLAIN: mysql> explain select last_name from employees order by last_name; +----+-------------+-----------+------+---------------+------+---------+------+-------+----------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+-----------+------+---------------+------+---------+------+-------+----------------+ | 1 | SIMPLE | employees | ALL | NULL | NULL | NULL | NULL | …

2
服务器在会话协商期间以空数据包作为响应,从而导致客户端给出了格式错误的数据包错误
我正在尝试连接到远程mysql服务器。这种情况发生的时间为100%。 客户端:mysql Ver 14.14 Distrib 5.7.12,用于Win32(AMD64) 服务器:5.0.95 这是我得到的错误: C:\>mysql -h example.com -P 3306 -D prod_rcadb -u username -p Enter password: ********** ERROR 2027 (HY000): Malformed packet 与mysqladmin相同的错误: C:\>mysqladmin -h example.com -P 3306 -u username -p version Enter password: ********** mysqladmin: connect to server at '10.106.24.79' failed error: 'Malformed packet' 因此,我进行了一次总结,只是想了解一下对话的样子。 …
14 mysql 

1
如何在Sequel Pro上从远程服务器转储整个数据库
我有一个数据库连接到SequelPro Mac OSX上的远程主机。我如何转储整个数据库。我需要像mysqldump命令一样执行转储: $ mysqldump --opt -u [uname] -p[pass] [dbname] > [backupfile.sql] 我找到了表转储选项,但是我需要完整的数据库转储。
14 mysql  mysqldump 


2
从InnoDB表中删除和回收空间
我有一个700GB的InnoDB表,我不会再写入任何数据(只能读取)。我想删除它保存的旧数据并回收该磁盘空间(因为我快用完了)。删除部分非常简单,因为我有一个自动增量主索引,因此我可以使用它对块进行迭代,然后删除行,但这不会让我退缩。我认为OPTIMIZE TABLE会,但是在700GB的桌子上可能会永远占用,所以我有没有忽略其他选择? 由RolandoMySQLDBA编辑 假设您的表是mydb.mytable,请运行以下查询并将其发布在此处,以便您确定表收缩所需的磁盘空间: SELECT FORMAT(dat/POWER(1024,3),2) datsize, FORMAT(ndx/POWER(1024,3),2) ndxsize, FORMAT((dat+ndx)/POWER(1024,3),2) tblsize FROM (SELECT data_length dat,index_length ndx FROM information_schema.tables WHERE table_schema='mydb' AND table_name='mytable') A; 如果允许,我们还需要查看表结构。 由Noam编辑 这是查询的输出: datsize ndxsize tblsize 682.51 47.57 730.08 这是表格结构(SHOW CREATE TABLE) `CREATE TABLE `mybigtable` ( `id` int(11) NOT NULL AUTO_INCREMENT, `uid` int(11) NOT NULL, `created_at` datetime …
14 mysql  innodb 

4
如何确定我的AWS RDS数据库需要多少个IOP?
我正在将mysql数据库的一部分迁移到AWS中。有问题的数据是99%写入的,并且每行都有大约1k的varchar字段,一个日期时间和4个整数。 我估计在高峰时段每小时需要插入20-25k条记录。 我在当前数据库上运行了iostat -h,它报告了大约40 tps。 如何确定我需要哪种类型的IOPS?
14 mysql  amazon-rds 

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.