小编Mat*_*ley的帖子

如何强制 MySQL 将 0 作为有效的自动递增值

长话短说,我有一个 SQL 文件,我想将其作为skel样式文件导入,因此这将以编程方式重复执行。我可以随心所欲地编辑 SQL 文件,但我不想接触应用程序本身。

此应用程序用于userid = 0表示匿名用户。它在数据库中还有一个相关的(空白)条目来表示这个“用户”。因此,我的行skel.sql看起来像这样:

INSERT INTO `{{TABLE_PREFIX}}users` VALUES (0, '', '', '', 0, 0, 0, '', '', 0, 0, 0, 0, 0, NULL, '', '', '', NULL);
Run Code Online (Sandbox Code Playgroud)

问题在于这uid是一个auto_increment字段,从技术上讲,它0是一个无效值。或者至少,如果您将其设置为 0,您基本上是在告诉 MySQL,“请在此字段中插入下一个 id”。

现在,我想我可以把一个INSERT那么UPDATE查询到我的SQL文件,但有没有告诉MySQL的一般,是的,其实我是想以插入的方式0进入这个领域?

mysql autoincrement

5
推荐指数
1
解决办法
9243
查看次数

为什么数据盘为奇数的RAID5写入性能不佳

根据对我的另一个问题的评论,我的MD RAID 阵列性能不佳的原因很可能是因为我的 RAID5 阵列有 5 个数据磁盘。我已经尝试搜索有关为什么会这样的信息,但没有找到任何信息,所以我正在寻找有关为什么会这样的更多信息,以及它与拥有 4 个数据磁盘相比会产生什么样的影响。

raid md

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

Nginx 不会将 _SERVER["DOCUMENT_ROOT"] 发送到 PHP-fpm

这是我的 nginx 配置文件的一部分:

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
    root           html;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME /var/www/$fastcgi_script_name;
    include        fastcgi_params;
}
Run Code Online (Sandbox Code Playgroud)

几乎网站会加载,因为 / 的位置也在此配置文件中设置为 /var/www。

location / {
    root   /var/www;
    index  index.php index.html index.htm;
}
Run Code Online (Sandbox Code Playgroud)

当我使用 phpinfo() 并读取 PHP 变量表时,我注意到了这一点:

_SERVER["DOCUMENT_ROOT"]    /usr/share/nginx/html
Run Code Online (Sandbox Code Playgroud)

其他变量(大部分在 nginx.conf 中配置)如服务器名称、脚本文件名等,被发送到 php。因此,nginx 不会将此变量发送给 PHP。我必须做什么?

我使用的是 PHP 5.3.8 和 nginx 0.8

nginx php-fpm

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

标签 统计

autoincrement ×1

md ×1

mysql ×1

nginx ×1

php-fpm ×1

raid ×1