小编Nif*_*fle的帖子

我可以在使用时在 MySQL 数据库中的表上创建索引吗

如果可以的话,有什么理由(性能/稳定性)我不应该这样做?

mysql index concurrency

23
推荐指数
2
解决办法
1万
查看次数

MySQL中的“CREATE INDEX”是线性操作吗?

我的意思是:

如果在包含n行的表上创建索引需要t时间。在同一个表上创建索引1000*n需要大约1000*t时间。

我正在努力实现是估计它需要通过创建相同的索引创建的生产数据库的索引所需的时间小于测试数据库。

mysql index

20
推荐指数
2
解决办法
891
查看次数

如何在 MySQL 服务器上显示 binlog_format?

如何binlog_format在 MySQL 服务器上显示?

如果我不喜欢它,我如何将它永久设置为XX

其中XXSTATEMENTROWMIXED

mysql query

19
推荐指数
2
解决办法
4万
查看次数

我可以确保两列不具有相同的值吗

如果我有一张看起来像这样的桌子

CREATE TABLE foo (
   id INT NOT NULL AUTO_INCREMENT,
   aa INT NOT NULL,
   bb INT NOT NULL,
   PRIMARY KEY (id),
   UNIQUE KEY (aa, bb),
   CONSTRAINT aa_ref FOREIGN KEY (aa) REFERENCES bar (id),
   CONSTRAINT bb_ref FOREIGN KEY (bb) REFERENCES bar (id)
)
Run Code Online (Sandbox Code Playgroud)

aa != bb除了使用应用程序级逻辑或强制触发器在 BEFORE INSERT 上失败之外,有没有办法确保?

mysql-5.1

14
推荐指数
2
解决办法
2万
查看次数

Qcache_free_memory 未满但我得到了很多 Qcache_lowmem_prunes

我刚刚开始涉足我们的 CMS 的查询缓存。

谁能告诉我(或至少提供一个良好的猜测)为什么我得到了很多Qcache_lowmem_prunes时候有一半以上Qcache_free_memory是免费的吗?

query_cache_size=512M
query_cache_limit=1M
Run Code Online (Sandbox Code Playgroud)

这是大约 12 小时后的样子

show status like '%qcach%';
+-------------------------+-----------+
| Variable_name           | Value     |
+-------------------------+-----------+
| Qcache_free_blocks      | 10338     | 
| Qcache_free_memory      | 297348320 | 
| Qcache_hits             | 10254104  | 
| Qcache_inserts          | 6072945   | 
| Qcache_lowmem_prunes    | 725279    | 
| Qcache_not_cached       | 2237603   | 
| Qcache_queries_in_cache | 48119     | 
| Qcache_total_blocks     | 111346    | 
+-------------------------+-----------+
Run Code Online (Sandbox Code Playgroud)

这就是它的照顾方式flush query cache

show status like '%qcach%';
+-------------------------+-----------+
| Variable_name           | …
Run Code Online (Sandbox Code Playgroud)

mysql performance cache query-cache

11
推荐指数
1
解决办法
1万
查看次数

查询问题:自动列只能有一个

有人可以告诉我这个表定义有什么问题。
mysql 版本是 5.1.52-log

root@localhost spoolrdb> create table spoolqueue (
                             queue int,
                             idx bigint not null auto_increment,
                             status smallint,
                             querystring varchar(2048),
                             contenttype varchar(255),
                             characterencoding varchar(16),
                             body text,
                             primary key(queue,idx)
                             );
ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key
Run Code Online (Sandbox Code Playgroud)

mysql query

10
推荐指数
1
解决办法
1万
查看次数

从 linux 到 SQL-Server 的脚本化命令行访问

有谁知道一个现成的1命令行工具可以让我从 linux 客户端连接到 sql-server?

我希望能够运行任意查询,但大多数时候我希望能够进行数据库转储然后恢复它。

必须是可编写脚本的,因为它将集成到自动构建环境中。

1仅供参考:我唯一的另一种选择是写点东西。我可能会使用 perl 和 DBI

sql-server-2008 linux

8
推荐指数
1
解决办法
4万
查看次数

更改为 utf8_general_ci 时 DateTime 的默认值无效

我正在尝试运行一个脚本来修改数据库,这个查询

ALTER TABLE cmContentVersion CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
Run Code Online (Sandbox Code Playgroud)

给出这个错误

ERROR 1067 (42000) at line 68: Invalid default value for 'modifiedDateTime'
Warning (Code 1264): Out of range value for column 'modifiedDateTime' at row 1
Error (Code 1067): Invalid default value for 'modifiedDateTime'
Run Code Online (Sandbox Code Playgroud)

该列modifiedDateTime被定义为

`modifiedDateTime` datetime NOT NULL default '0000-00-00 00:00:00',
Run Code Online (Sandbox Code Playgroud)

问题:在使用 utf8_general_ci 时,是否有可以替换的有效“无效”默认值0000-00-00 00:00:00。或者我是否必须告诉开发人员停止依赖他们代码中的“无效日期”?

mysql collation

7
推荐指数
1
解决办法
2万
查看次数

将 blob 从一行复制到另一行

我连续有一个损坏的斑点。
我想用同一张表中的另一个斑点替换它。

我怎样才能只使用sql语句来做到这一点?(如果可能的话,不访问文件系统。)

mysql query

2
推荐指数
1
解决办法
9805
查看次数