分类目录归档:科技

MongoDB 配置文件mongod.conf

配置文件及简单注释(参考官方3.2文档):

systemLog:
   # verbosity: 0  #日志等级,0-5,默认0
   # quiet: false  #限制日志输出,
   # traceAllExceptions: true  #详细错误日志
   # syslogFacility: user #记录到操作系统的日志级别,指定的值必须是操作系统支持的,并且要以--syslog启动
   path: /Users/mhq/projects/db/mongo/logs/log.txt  #日志路径。
   logAppend: false #启动时,日志追加在已有日志文件内还是备份旧日志后,创建新文件记录日志, 默认false
   logRotate: rename #rename/reopen。rename,重命名旧日志文件,创建新文件记录;reopen,重新打开旧日志记录,需logAppend为true
   destination: file #日志输出方式。file/syslog,如果是file,需指定path,默认是输出到标准输出流中
   timeStampFormat: iso8601-local #日志日期格式。ctime/iso8601-utc/iso8601-local, 默认iso8601-local
   # component: #各组件的日志级别
   #    accessControl:
   #       verbosity: <int>
   #    command:
   #       verbosity: <int>

processManagement:
   fork: true #以守护进程运行 默认false
   # pidFilePath: <string> #PID 文件位置

net:
   port: 27017 #监听端口,默认27017
   bindIp: 127.0.0.1 #绑定监听的ip,deb和rpm包里有默认的配置文件(/etc/mongod.conf)里面默认配置为127.0.0.1,若不限制IP,务必确保认证安全,多个Ip用逗号分隔
   maxIncomingConnections: 65536 #最大连接数,可接受的连接数还受限于操作系统配置的最大连接数
   wireObjectCheck: true #校验客户端的请求,防止错误的或无效BSON插入,多层文档嵌套的对象会有轻微性能影响,默认true
   ipv6: false #是否启用ipv6,3.0以上版本始终开启
   unixDomainSocket: #unix socket监听,仅适用于基于unix的系统
      enabled: false #默认true
      pathPrefix: /tmp #路径前缀,默认/temp
      filePermissions: 0700 #文件权限 默认0700
   http: #警告 确保生产环境禁用HTTP status接口、REST API以及JSON API以防止数据暴露和漏洞攻击
      enabled: false #是否启用HTTP接口、启用会增加网络暴露。3.2版本后停止使用HTTP interface
      JSONPEnabled: false #JSONP的HTTP接口
      RESTInterfaceEnabled: false #REST API接口
   # ssl: #估计用不到,所以没有自己看
   #    sslOnNormalPorts: <boolean>  # deprecated since 2.6
   #    mode: <string>
   #    PEMKeyFile: <string>
   #    PEMKeyPassword: <string>
   #    clusterFile: <string>
   #    clusterPassword: <string>
   #    CAFile: <string>
   #    CRLFile: <string>
   #    allowConnectionsWithoutCertificates: <boolean>
   #    allowInvalidCertificates: <boolean>
   #    allowInvalidHostnames: <boolean>
   #    disabledProtocols: <string>
   #    FIPSMode: <boolean>

security:
   authorization: enabled # enabled/disabled #开启客户端认证
   javascriptEnabled:  true #启用或禁用服务器端JavaScript执行
   # keyFile: <string> #密钥路径
   # clusterAuthMode: <string> #集群认证方式
   # enableEncryption: <boolean>
   # encryptionCipherMode: <string>
   # encryptionKeyFile: <string>
   # kmip:
   #    keyIdentifier: <string>
   #    rotateMasterKey: <boolean>
   #    serverName: <string>
   #    port: <string>
   #    clientCertificateFile: <string>
   #    clientCertificatePassword: <string>
   #    serverCAFile: <string>
   # sasl:
   #    hostName: <string>
   #    serviceName: <string>
   #    saslauthdSocketPath: <string>
   

# setParameter: #设置参数
#    <parameter1>: <value1>
#    <parameter2>: <value2>

storage:
   dbPath: /Users/mhq/projects/db/mongo/test/ #数据库,默认/data/db,如果使用软件包管理安装的查看/etc/mongod.conf
   indexBuildRetry: true #重启时,重建不完整的索引
   # repairPath: <string>  #--repair操作时的临时工作目录,默认为dbPath下的一个_tmp_repairDatabase_<num>的目录
   journal: 
      enabled: true #启动journal,64位系统默认开启,32位默认关闭
      # commitIntervalMs: <num> #journal操作的最大时间间隔,默认100或30
   directoryPerDB: false #使用单独的目录来存储每个数据库的数据,默认false,如果需要更改,要备份数据,删除掉dbPath下的文件,重建后导入数据
   # syncPeriodSecs: 60 #使用fsync来将数据写入磁盘的延迟时间量,建议使用默认值
   engine: wiredTiger #存储引擎,mmapv1/wiredTiger/inMemory 默认wiredTiger
   # mmapv1:
   #    preallocDataFiles: <boolean>
   #    nsSize: <int>
   #    quota:
   #       enforced: <boolean>
   #       maxFilesPerDB: <int>
   #    smallFiles: <boolean>
   #    journal:
   #       debugFlags: <int>
   #       commitIntervalMs: <num>
   # wiredTiger:
   #    engineConfig:
   #       cacheSizeGB: <number>  #缓存大小
   #       journalCompressor: <string> #数据压缩格式 none/snappy/zlib
   #       directoryForIndexes: <boolean> #将索引和集合存储在单独的子目录下,默认false
   #    collectionConfig:
   #       blockCompressor: <string> #集合数据压缩格式 
   #    indexConfig:
   #       prefixCompression: <boolean> #启用索引的前缀压缩
   # inMemory:
   #    engineConfig:
   #       inMemorySizeGB: <number>
 
operationProfiling: #性能分析
   slowOpThresholdMs: 100 #认定为查询速度缓慢的时间阈值,超过该时间的查询即为缓慢查询,会被记录到日志中, 默认100
   mode: off #operationProfiling模式 off/slowOp/all 默认off

# replication: #复制集相关
#    oplogSizeMB: <int>
#    replSetName: <string>
#    secondaryIndexPrefetch: <string>
#    enableMajorityReadConcern: <boolean>
# sharding: #集群分片相关
#    clusterRole: <string>
#    archiveMovedChunks: <boolean>

# auditLog:
#    destination: <string>
#    format: <string>
#    path: <string>
#    filter: <string>

# snmp:
#    subagent: <boolean> #当设置为true,SNMP作为代理运行
#    master: <boolean> #当设置为true,SNMP作为主服务器运行

# basisTech:
#    rootDirectory: <string>

<!– more –>

转自:https://www.jianshu.com/p/f179ce608391

CentOS 安装 MongoDB

1. 配置安装源

vi /etc/yum.repos.d/mongodb-org-3.4.repo

添加内容

[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

安装

yum install -y mongodb-org

设置可连接IP

vi /etc/mongod.conf

找到以下代码片段:

# network interfaces
net:
  port: 27017
  bindIp: 127.0.0.1  # Listen to local interface only, comment to listen on all interfaces.

修改 bindIp 为:

  bindIp: 0.0.0.0

0.0.0.0 为所以 IP 均可连接。

管理

开启:service mongod start
关闭:service mongod stop
重启:service mongod restart
运行中重启:service mongod try-restart 它只会在服务已经在运行中的时候重启服务。
重新加载:service mongod reload
强制重新加载:service mongod force-reload
状态:service mongod status

macOS 升级后出现xcrun: error: invalid active developer path

Xcode CommandLineTools

发现 macOS 升级系统之后总会报错 git 找不到,无论是 macOS High Sierra ,还是 macOS Mojave

错误信息:

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

解决方法,重装 xcode CommandLineTools:

xcode-select --install

如果没有解决问题,执行以下命令

sudo xcode-select -switch /

修改iTerm2“@”后面的显示名称

规则是这样的:

user@hostname

  • user: 终端输入:who an I 即可看见
  • hostname: 终端输入:hostname 即可看见

修改hostname:

示例

sudo hostname webclown

修改成功,新打开一个终端tab或者关闭终端再次打开即可看见效果

拓展

如何删除CSS中元素最后一个字的字间距(letter-spacing)?

<iframe height=’265′ scrolling=’no’ title=’NMEePW’ src=’//codepen.io/Keystion/embed/NMEePW/?height=265&theme-id=dark&default-tab=result&embed-version=2′ frameborder=’no’ allowtransparency=’true’ allowfullscreen=’true’ style=’width: 100%;’>See the Pen <a href=’https://codepen.io/Keystion/pen/NMEePW/’>NMEePW</a> by Keystion (<a href=’https://codepen.io/Keystion’>@Keystion</a>) on <a href=’https://codepen.io’>CodePen</a>.
</iframe>

2017年的某天随想

每次登录微信公众号平台时候,都需要找到手机扫描一下确认登录,突发奇想:这时候要是只要用眼睛一睁一闭即可完成登录那该多方便啊。

整理笔记时,发现了这段文字,记得那时iPhone的[Face ID]还没有发布,现在想一下,如果[Face ID]应用于Mac上的话,这个随想就实现😜。

macOS 自定义终端(Terminal)欢迎图案

Banner图

Mac自定义终端(Terminal)欢迎图案 预览图

  1. 打开终端或者iTerm2
  2. 输入:cd /etc
  3. 输入:sudo pico motd
  4. 输入当前用户密码,然后进入编辑页面
  5. 输入你想要字符图案或者复制粘贴已经生成好的图案。(这里有个小工具在命令行就可以生成文字字图案)。
  6. 然后,按control + x,输入y,按回车键即可保存成功。
  7. 关闭终端或者iTerm2,再次打开就会出现类Banner图的效果了。

我使用的软件

我使用的软件

详情查看:https://software.webclown.net/

以下是一个简单概要。


浏览器

  • Chrome
  • Firefox

输入法

  • 搜狗输入法

社交

  • QQ
  • 微信

增效工具

  • Sip
  • The Unarchiver
  • Alfred
  • ShadowsocksX
  • iStat Menus
  • Toggl Desktop
  • 滴答清单
  • CleanMyMac
  • Spectacle
  • Paste
  • DaisyDisk
  • Bartender 3
  • AirServer
  • licecap
  • SwitchHosts

开发工具

  • Go2Shell
  • iTerm 2
  • Sublime Text

文档工具

  • Bear

设计工具

  • Sketch
  • Photoshop
  • Pixelmator
  • Axure RP
  • Illustrator

视频

  • IINA