作者文章

fwq

FWQ
Docker教程
PHP中的错误提示
1、打开/关闭错误提示的方法包括:a、更改php.ini文件 b、使用ini_set设置,详见下表   变量 php.ini 语法:变量=值 ini_set 语法:ini_set(“变量”,值) 说明 display_errors On / Off  on / off,true / false , 1/ 0 开启/关闭显示错误提示,但不影响错误写入日志。即display_errors关闭,错误信息可以写入日志,仅不在客户端显示而已。 error_reporting 见下表 见下表 显示错误级别 display_startup_errors On…
2024-11-24 阅读全文 →
FWQ
Docker教程
Mongodb的配置
配置适用于mongod、mongos,下面的介绍中只使用mongod举例说明,如有不同之处,会特别指出。 mongodb 3.0之后配置文件采用YAML格式,这种格式非常简单,使用<key>:<value>表示,开头使用“空格”作为缩进,不能使用tab。需要注意的是,“:”之后有value的话,需要紧跟一个空格,如果key只是表示层级,则无需在“:”后增加空格(比如:systemLog:后面既不需要空格)。按照层级,每行4个空格缩进,第二级则8个空格,依次轮推,顶层则不需要空格缩进。如果格式不正确,将会出现错误: 配置的实例:Mongodb中配置实例 1、使用配置文件启动,使用–config 或 -f mongod --config /etc/mongod.conf mongos --config /etc/mongos.conf mongod -f /etc/mongod.conf mongos -f /etc/mongos.con 2、systemLog配置项 systemLog.verbosity <int> #日志文件输出的级别,越大级别越低,共0-5级,默认0 systemLog.quite <boolean> #在quite模式下会限制输出信息:数据库命令输出,副本集活动, #连接接受事件,连接关闭事件。 systemLog.traceAllExceptions…
2024-11-24 阅读全文 →
FWQ
Docker教程
Linux中vmstat参数详解
常使用的命令: #vmstat 1 每1秒输出一次   procs ————————-memory——————swap———io——- –system———-cpu—– r   b     swpd   free         buff         cache          si   so     bi    bo         in   cs       us sy id wa st 0  0      0    …
2024-11-24 阅读全文 →
FWQ
Docker教程
Mongodb中配置实例
# where to write logging data. systemLog: #I=Info D=Debug W=Warning E=Error F=Fatal #级别越高限制越小,当等于5时,会产生源源不断的D级别日志文件,例如[WTJournalFlusher] flushed journal verbosity: 0 #生产环境中建议关闭,避免产生大量的日志记录 traceAllExceptions: false #可选file=用户级日志 syslog=系统级日志 #如果设置为syslog,选项path必需注释掉,并指定系统日志设施syslogFacility #如果设置为file,刚好相反,注释掉syslogFacility,并设定path destination: file #日志类型为syslog时,系统日志设施可以为user、mail、deamon等。 #如果设置为user,则日志写入/var/log/message…
2024-11-24 阅读全文 →
FWQ
Docker教程
mongodb中的管理实用命令
Mongodb中的操作方法的命令非常标准,这有助于我们能够理解、更好记住这些方法,达到熟练掌握。 1、用户 常识操作,无非包含了添、删、改、查。但有一个非常有意思的事情是,这些操作只能在相对应的db中,怎么理解呢?打比方说要给guohu库添加新用户,必需先执行use guohu,然后使用db.createUser()的方法,其他的方式类似。   db.createUser({user:"root",pwd:"root",roles:["root"]}) db.createUser({user:"guohu",pwd:"123456",roles:["readWrite"]}) db.dropUser("guohu") db.updateUser("guohu",{roles:["dbAdmin"]}) db.updateUser("wanda",{pwd:"wanda"}) db.getUser("guohu") db.getUsers() #提供了一种修改密码方法,这种方法和使用updateUser修改,可能是因为缓存的问题,会出现一点小插曲,但如果修改完后,重启mongod,就没有问题了。 db.changeUserPassword("guohu","123456") #添加、移除角色,也可以使用updateUser的方法 db.grantRolesToUser("wanda",["dbAdmin"]) db.revokeRolesFromUser("wanda",["dbAdmin"]) 2、角色 这一块用的相对少,所以就简单罗列一下方法,本人比较懒,方法也是添、删、改、查,在加上一些快捷的延伸操作 db.createRole() db.dropRole() db.dropRoles() db.updateRole() db.getRole() db.getRoles() db.grantPrivilegesToRole() db.revokePrivilegesFromRole() db.grantRolesToRole()…
2024-11-24 阅读全文 →
FWQ
Docker教程
mongodb中的集群配置
mongodb中的集群配置,无法通过mongod.conf中配置,只能在mogo通过命令配置,下面介绍下在mogo中的定义的config.   基本语法:config={….} ,也就是说config是一个json的数组。请注意哪些配置是必须的、非必须、建议使用、不建议使用。 _id:副本集的名称,该值必需和mongod.conf配置文件中的 replication.replSetName 一致,或者在mongod启动命令中的–replSet保持一致。[必须的] version:复制集的版本。[非必须] configsvr:分片集群服务的复制集,需要设置为true,否则设置为false。默认为false,3.2版本默认为true,3.4版本才默认为false 。这里坑了我两天。 protocolVersion:协议版本,3.2后默认为1,[非必须,采用默认值即可] writeConcernMajorityJournalDefault:3.4的新功能设置,等同于writeConcern中设置的{ w: “majority” } ,需要注意的是,如果protocolVersion=1,默认为true,protocolVersion=0,默认为false members:成员。是一个json的数组 members[n]._id:_id是一个从0-255的整型数。在更新副本集节点配置时,将用到这个_id,也是节点的唯一标识。[必须] members[n].host:可以是host或者IP:port,默认端口27017 [必须] members[n].arbiterOnly:默认false,仲裁节点,也可以使用方法rs.addArb() 直接添加。[非必须] members[n].buildIndexes:默认true,节点是否创建索引。这个建议设置为true,采用默认设置即可。如果该值设置为false,那需要注意同时该节点的值priority也需要设置为0,否则投票将无法创建索引的节点,升级为premary节点,客户端的情况将会出错。 members[n].hidden:设置为隐藏节点。客户端的情况不会到达隐藏节点,不管readPrefence如何设置。一般情况下,隐藏节点做为备份节点,延迟节点也属于隐藏节点。[非必须] members[n].priority:选举premary的权重,默认值是1,值可以从1-1000,改值只是一个相对值。如果像让某一个节点无法成为主节点,该值设置为0 members[n].tags: members[n].slaveDelay:设置延迟节点,改值的单位是秒。默认是0 members[n].votes:默认值1,单个节点的最大投票数。副本集的最大节点数是50,但最多只有7个投票节点,除这7个之外,其他的投票数应该为0.…
2024-11-24 阅读全文 →
FWQ
Docker教程
RabbitMQ的安装
rabbitMQ的下载地址: http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm erlang的下载地址: http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el7.centos.x86_64.rpm   如果要选择其他的版本,请在这里查看下载: http://www.rabbitmq.com/releases/erlang/ http://www.rabbitmq.com/releases/rabbitmq-server/ 以上的地址都是rabbitmat官方提供的地址,尽量使用这里的安装包,虽然erlang官方也有安装包,但和rabbitMQ官方的还是有些许区别。 1、RabbitMQ的依赖: 错误:依赖检测失败: erlang >= R16B-03 被 rabbitmq-server-3.6.6-1.el7.noarch 需要 socat 被 rabbitmq-server-3.6.6-1.el7.noarch 需要 2、安装 socat yum install socat.x86_64 3、安装 erlang…
2024-11-24 阅读全文 →
FWQ
Docker教程
RabbitMQ中5个shell脚本的本质 – 推荐
从文章中可以看到,5个shell脚本中的rabbitmqctl、rabbitmq-server、rabbitmq-plugins都include了rabbitmq-env脚本,而rabbitmq-env脚本include了rabbitmq-defaults。rabbitmq-defaults的默认设置,而且rabbitmq-env是rabbmitmq的真正配置shell(并非配置文件)。结合该文章,注释了rabbit 3.6.6的5个文件。   1、rabbitmq-defaults #!/bin/sh -e #参数-e表示一旦出错,就退出当前的shell # RABBITMQ_HOME变量在rabbitmq-env脚本中定义了,rabbitmq-env脚本include了该文件。 SYS_PREFIX=${RABBITMQ_HOME} ### next line will be updated when generating a standalone release ERL_DIR= CLEAN_BOOT_FILE=start_clean SASL_BOOT_FILE=start_sasl if [ -f "${RABBITMQ_HOME}/erlang.mk"…
2024-11-24 阅读全文 →
FWQ
Docker教程
PHP安装 AMQP扩展
PHP安装 AMQP扩展 AMQP扩展能够支持rabbitMQ,AMQP是rabbitMQ的协议(Advanced Message Queue Protocol 高级消息队列协议)这个可自行百度。   1、安装rabbitmq-c-0.8.0 为什么要安装这个,不知道原因,PHP的官方网站上是怎么说滴。 下载地址:https://github.com/alanxz/rabbitmq-c/releases/download/v0.8.0/rabbitmq-c-0.8.0.tar.gz cd rabbitmq-c-0.8.0 ./configure --prefix=/usr/local/rabbitmq-c make make install 2、安装amqp 下载地址:https://pecl.php.net/package/amqp # cd amqp-1.7.1 # phpize # ./configure --with-php-config=/usr/local/php7/bin/php-config --with-amqp…
2024-11-24 阅读全文 →