当前位置:  数据库>其它
本页文章导读:
    ▪ERROR 1436 (HY000): Thread stack overrun: 6656 bytes used of a 131072 byte stack, and 128000 bytes      执行 call proc1(),报错了: ERROR 1436 (HY000): Thread stack overrun: 6656 bytes used of a 131072 byte stack, and 128000 bytes needed. Use 'mysqld --thread_stack=#' to specify a bigger stack. 错误原因是 thread_stack(如果是Window下的.........
    ▪支持海量数据的 MongoDB NoSQL      关于这个速查卡MongoDB是一个文档型数据库,它可以方便的应用于大多数语言。这个小清单列出了MongoDB经常使用和容易忘记的一些操作,命令和技术。配置选项安装选项启动MongoDB的选项可以通.........
    ▪mysql 启动事件 启动触发器功能      事件调度器有时也可称为临时触发器(temporal triggers),因为事件调度器是基于特定时间周期触发来执行某些任务,而触发器(Triggers)是基于某个表所产生的事件触发的,区别也就在这里。 在使用.........

[1]ERROR 1436 (HY000): Thread stack overrun: 6656 bytes used of a 131072 byte stack, and 128000 bytes
    来源: 互联网  发布时间: 2013-11-07

执行 call proc1(),报错了:

ERROR 1436 (HY000): Thread stack overrun: 6656 bytes used of a 131072 byte stack, and 128000 bytes needed. Use 'mysqld --thread_stack=#' to specify a bigger stack.

错误原因是 thread_stack(如果是Window下的话在这个文件中my-small.ini)太小,默认的128K,建议调整到500K

 

 

mysql  服务器配置:

http://www.52z.com/info/html/24810.html

 

作者:qiuyujiaoqiuyulong 发表于2013-1-25 15:07:51 原文链接
阅读:4 评论:0 查看评论

    
[2]支持海量数据的 MongoDB NoSQL
    来源:    发布时间: 2013-11-07

关于这个速查卡

MongoDB是一个文档型数据库,它可以方便的应用于大多数语言。这个小清单列出了MongoDB经常使用和容易忘记的一些操作,命令和技术。

配置选项

安装选项

启动MongoDB的选项可以通过命令行或者配置文件设置,两者的语法稍微有点不同,这里有一个三种选项的设置例子:

命令行配置文件--dbpath /path/to/dbdbpath=/path/to/db--authauth=true-vvvvvv=true

在mongod下运行--help可以列出所有的操作选项,但是这里我们列出了一些最常用的:

操作选项描述--config /path/to/config指定其他配置选项的配置文件.--dbpath /path/to/data数据存储目录.--port 27017监听端口号.--logpath /path/to/file.log日志输出文件,这是个明确的文件路径,不是目录.--logappend重启后,以追加的方式创建日志防止把之前的日志删除了。在使用--logpath时总是开启.--fork把mongod配置为守护进程.--auth单个服务器的安全验证.--keyFile /path/to/key.txt副本集和分片时安全验证,需要使用一个路径共享密钥。--nohttpinterface关闭http访问接口--bind_ip address只允许指定的网络ip访问.

如果想安全的启动mongod,就要使用nohttpinterface和bind_ip操作选项,确定外网不能直接访问。尤其确保你没有其余的选项启动,MongoDB需要以下网络环境可以访问:

  • 单个服务器 - 客户端程序可以获取访问连接
  • 副本集 - 任何成员集能够访问,包括自己;客户端能够访问任何一个成员集,并且可访问的成员集都能够成为主节点(活跃节点).
  • 分片- mongos进程必须能够连接到配置的服务器和分片,分片必须能够彼此连接。客户端程序必须能够连接到mongos进程。配置服务器没必要彼此提供访问连接的支持。

所有的连接都是通过tcp建立的.

缪斯的情人
翻译于 2天前

6人顶

顶 翻译的不错哦!

其它翻译版本(2)

查看配置

如果你6个月前启动mongod时做了一堆配置,那么现在你如何知道做了什么配置呢?这里提供了一个shell小助手:

> db.serverCmdLineOpts()
{ "argv" : [ "./mongod", "--port", "30000" ], "parsed" : { },
"ok" : 1 }

解析后的字段是从配置文件读取的一些参数列表.

使用shell

Shell帮助

当你忘记一个命令时,mongodb提供了许多功能帮助你:

> // basic help
> help
db.help() help on db methods
db.mycoll.help() help on collection methods
sh.help() sharding helpers
rs.help() replica set helpers
help admin administrative help
help connect connecting to a db help
...

注意对于数据库,集合,副本集,分片,管理员等提供了单独了帮助功能。这里没有一一列出,像游标的帮助功能如下:

> // list common cursor functions
> db.foo.find().help()

你可以使用这个功能和小助手作为一个内置的备忘清单。

缪斯的情人
翻译于 2天前

0人顶

顶 翻译的不错哦!

查看方法的定义

如果你不知道一个方法是干什么用的,你可以在shell中通过去除括号的方式运行它,查看它的源码:

> // run the function
> db.serverCmdLineOpts()
{ "argv" : [ "./mongod" ], "parsed" : { }, "ok" : 1 }
> // see its source
> db.serverCmdLineOpts
function () {
return this._adminCommand("getCmdLineOpts");
}

这可以帮助我们获悉这个方法需要什么参数和抛出什么错误,以及如何在其他语言中使用。

缪斯的情人
翻译于 2天前

0人顶

顶 翻译的不错哦!

使用编辑功能

shell命令限制多行的支持,因此在里面编写程序很费劲,shell编辑小助手让它更加简单,打开一个文本编辑器,编辑一个变量,例如:

> x = function() { /* some function we're going to fill in */ }
> edit x

在编辑器修改一个变量保存退出。这个变量就在shell里面被设定好了。

不管是编辑器的环境变量或者MongoDB shell的变量编辑环境,都必须设置使用edit模式。你可以在MongoDB shell中通过如下命令配置:

> EDITOR="/usr/bin/emacs"

编辑模式在JavaScript脚本下是无法使用的,只能在交互的shell中使用。

缪斯的情人
翻译于 2天前

1人顶

顶 翻译的不错哦!

.mongorc.js

如果你的主目录下有个.mongorc.js文件,那么当你启动shell时他就会自动运行。使用它可以初始化任何你经常使用的helper方法和你不想意外操作的删除方法.

比如,你不想使用默认的dropDatabase()方法了,你可以在.mongorc.js文件中添加下面的命令:

DB.prototype.dropDatabase = function() {
print("No dropping DBs!");
}
db.dropDatabase = DB.prototype.dropDatabase;

上面的例子改变了dropDatabase() helper方法,使他只打印出一行信息,而没有真正的删除数据库.

注意这个技巧不是一个安全手段,固执的用户仍然可以在不使用helper前提下删除数据库。然而,移除危险的admin权限命令也可以帮助阻止“大堤的奔溃”.

几个建议在.mongorc.js中使用helper命令时移除的:

  • DB.prototype.shutdownServer
  • DBCollection.prototype.drop
  • DBCollection.prototype.ensureIndex
  • DBCollection.prototype.reIndex
  • DBCollection.prototype.dropIndexes

 


    
[3]mysql 启动事件 启动触发器功能
    来源: 互联网  发布时间: 2013-11-07
事件调度器有时也可称为临时触发器(temporal triggers),因为事件调度器是基于特定时间周期触发来执行某些任务,而触发器(Triggers)是基于某个表所产生的事件触发的,区别也就在这里。
在使用这个功能之前必须确保event_scheduler已开启,可执行
SET GLOBAL event_scheduler = 1; 
或我们可以在配置my.ini文件 中加上 event_scheduler = 1或
SET GLOBAL event_scheduler = ON;
来开启,也可以直接在启动命令加上“–event_scheduler=1”,例如:
mysqld ... --event_scheduler=1
要查看当前是否已开启事件调度器,可执行如下SQL:
SHOW VARIABLES LIKE 'event_scheduler';

SELECT @@event_scheduler;

拥有 SUPER 权限的账户执行 SHOW PROCESSLIST 就可以看到这个线程了。


在使用事件这个功能,首先要保证你的mysql的版本是5.1以上,然后还要查看你的mysql服务器上的事件是否开启。

查看事件是否开启,使用如下命令查看:

SHOW VARIABLES LIKE 'event_scheduler';

SELECT @@event_scheduler;

SHOW PROCESSLIST;

如果看到event_scheduler为on或者PROCESSLIST中显示有event_scheduler的信息说明就已经开启了事件。如果显示为off或者在PROCESSLIST中查看不到event_scheduler的信息,那么就说明事件没有开启,我们需要开启它。

开启mysql的事件,通过如下三种方式开启:

Ø  通过动态参数修改

SET GLOBAL event_scheduler = ON;

更改完这个参数就立刻生效了

注意:还是要在my.cnf中添加event_scheduler=ON。因为如果没有添加的话,mysql重启事件又会回到原来的状态了。

Ø  更改配置文件然后重启

在my.cnf中的[mysqld]部分添加如下内容,然后重启mysql。

event_scheduler=ON

Ø  通过制定事件参数启动

mysqld ... --event_scheduler=ON


作者:hjm4702192 发表于2013-1-25 15:50:14 原文链接
阅读:0 评论:0 查看评论

    
最新技术文章:
 




特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3