MongoDB - mongod.conf重要配置

mongod.conf

$ vi /etc/mongod.conf

手冊

https://docs.mongodb.com/manual/reference/configuration-options
https://docs.mongodb.com/manual/reference/parameters/

進(jìn)程管理

processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
名稱 說明
fork 運(yùn)行在后臺(tái)
pidFilePath PID文件路徑

網(wǎng)絡(luò)

net:
  port: 27017
  bindIp: 127.0.0.1  # Listen to local interface only, comment to listen on all interfaces.
名稱 說明
port 端口
bindIp 綁定外網(wǎng)op 多個(gè)用逗號(hào)分隔
maxIncomingConnections 進(jìn)程允許的最大連接數(shù) 默認(rèn)值為65536
wireObjectCheck 當(dāng)客戶端寫入數(shù)據(jù)時(shí) 檢測數(shù)據(jù)的有效性(BSON) 默認(rèn)值為true
ipv6 默認(rèn)值為false

存儲(chǔ)

storage:
  dbPath: /var/lib/mongo
  journal:
    enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:
名稱 說明
dbPath mongod進(jìn)程存儲(chǔ)數(shù)據(jù)目錄匆背,此配置僅對(duì)mongod進(jìn)程有效
indexBuildRetry 當(dāng)構(gòu)建索引時(shí)mongod意外關(guān)閉俩檬,那么再次啟動(dòng)是否重新構(gòu)建索引来破;索引構(gòu)建失敗压储,mongod重啟后將會(huì)刪除尚未完成的索引,但是否重建由此參數(shù)決定苍息。默認(rèn)值為true缩幸。
repairPath 配合--repair啟動(dòng)命令參數(shù),在repair期間使用此目錄存儲(chǔ)臨時(shí)數(shù)據(jù)竞思,repair結(jié)束后此目錄下數(shù)據(jù)將被刪除表谊,此配置僅對(duì)mongod進(jìn)程有效。不建議在配置文件中配置盖喷,而是使用mongod啟動(dòng)命令指定爆办。
engine 存儲(chǔ)引擎類型,mongodb 3.0之后支持“mmapv1”课梳、“wiredTiger”兩種引擎距辆,默認(rèn)值為“mmapv1”余佃;官方宣稱wiredTiger引擎更加優(yōu)秀。
journal 是否開啟journal日志持久存儲(chǔ)跨算,journal日志用來數(shù)據(jù)恢復(fù)爆土,是mongod最基礎(chǔ)的特性,通常用于故障恢復(fù)诸蚕。64位系統(tǒng)默認(rèn)為true步势,32位默認(rèn)為false,建議開啟背犯,僅對(duì)mongod進(jìn)程有效坏瘩。
directoryPerDB 是否將不同DB的數(shù)據(jù)存儲(chǔ)在不同的目錄中 默認(rèn)值為false
syncPeriodSecs mongod使用fsync操作將數(shù)據(jù)flush到磁盤的時(shí)間間隔,默認(rèn)值為60(單位:秒)強(qiáng)烈建議不要修改此值 mongod將變更的數(shù)據(jù)寫入journal后再寫入內(nèi)存漠魏,并間歇性的將內(nèi)存數(shù)據(jù)flush到磁盤中倔矾,即延遲寫入磁盤,有效提升磁盤效率
mmapv1 僅對(duì)MMAPV1引擎
quota:
enforced:false 配額管理蛉幸,是否限制每個(gè)DB所能持有的最大文件數(shù)量 默認(rèn)值為false
maxFilesPerDB:8 如果enforce開啟,每個(gè)DB所持有的存儲(chǔ)文件不會(huì)超過此閥值
smallFiles: false 是否使用小文件存儲(chǔ)數(shù)據(jù)丛晦;如果此值為true mongod將會(huì)限定每個(gè)數(shù)據(jù)文件的大小為512M(默認(rèn)最大為2G)奕纫,journal降低到128M(默認(rèn)為1G)。如果DB的數(shù)據(jù)量較大烫沙,將會(huì)導(dǎo)致每個(gè)DB創(chuàng)建大量的小文件匹层,這對(duì)性能有一定的影響。在production環(huán)境下锌蓄,不建議修改此值升筏,在測試時(shí)可以設(shè)置為true,節(jié)約磁盤瘸爽。
journal:
commitIntervalMs: 100 mongod進(jìn)程提交journal日志的時(shí)間間隔您访,即fsync的間隔。單位:毫秒
nsSize: 每個(gè)database的namespace文件的大小剪决,默認(rèn)為16灵汪,單位:M;最大值可以設(shè)置為2048柑潦,即dbpath下“.ns”后綴文件的大小享言。16M基本上可以保存24000條命名條目,新建一個(gè)collection或者index信息渗鬼,即會(huì)增加一個(gè)namespace條目览露;如果你的database下需要?jiǎng)?chuàng)建大量的collection(比如數(shù)據(jù)分析),則可以適度調(diào)大此值譬胎。
wiredTiger 如下配置僅對(duì)wiredTiger引擎生效(3.0以上版本)
engineConfig:
cacheSizeGB: 8 wiredTiger緩存工作集(working set)數(shù)據(jù)的內(nèi)存大小差牛,單位:GB命锄,此值決定了wiredTiger與mmapv1的內(nèi)存模型不同,它可以限制mongod對(duì)內(nèi)存的使用量多糠,而mmapv1則不能(依賴于系統(tǒng)級(jí)的mmap)累舷。默認(rèn)情況下,cacheSizeGB的值為假定當(dāng)前節(jié)點(diǎn)只部署一個(gè)mongod實(shí)例夹孔,此值的大小為物理內(nèi)存的一半被盈;如果當(dāng)前節(jié)點(diǎn)部署了多個(gè)mongod進(jìn)程,那么需要合理配置此值搭伤。如果mongod部署在虛擬容器中(比如只怎,lxc,cgroups怜俐,Docker)等身堡,它將不能使用整個(gè)系統(tǒng)的物理內(nèi)存,則需要適當(dāng)調(diào)整此值拍鲤。默認(rèn)值為物理內(nèi)存的一半贴谎。
journalCompressor: snappy journal日志的壓縮算法,可選值為“none”季稳、“snappy”擅这、“zlib”。
directoryForIndexes: false 是否將索引和collections數(shù)據(jù)分別存儲(chǔ)在dbPath單獨(dú)的目錄中景鼠。即index數(shù)據(jù)保存“index”子目錄仲翎,collections數(shù)據(jù)保存在“collection”子目錄。默認(rèn)值為false铛漓,僅對(duì)mongod有效溯香。
collectionConfig:
blockCompressor: snappy collection數(shù)據(jù)壓縮算法,可選值“none”浓恶、“snappy”玫坛、“zlib”。開發(fā)者在創(chuàng)建collection時(shí)可以指定值包晰,以覆蓋此配置項(xiàng)昂秃。如果mongod中已經(jīng)存在數(shù)據(jù),修改此值不會(huì)帶來問題杜窄,舊數(shù)據(jù)仍然使用原來的算法解壓肠骆,新數(shù)據(jù)文件將會(huì)采用新的解壓縮算法。
indexConfig:
prefixCompression: true 是否對(duì)索引數(shù)據(jù)使用“前綴壓縮”(prefix compression塞耕,一種算法)蚀腿。前綴壓縮,對(duì)那些經(jīng)過排序的值存儲(chǔ),有很大幫助莉钙,可以有效的減少索引數(shù)據(jù)的內(nèi)存使用量廓脆。默認(rèn)值為true。

性能分析器

operationProfiling:
名稱 說明
slowOpThresholdMs: 100 數(shù)據(jù)庫profiler判定一個(gè)操作是“慢查詢”的時(shí)間閥值磁玉,單位毫秒停忿;mongod將會(huì)把慢查詢記錄到日志中,即使profiler被關(guān)閉蚊伞。當(dāng)profiler開啟時(shí)席赂,慢查詢記錄還會(huì)被寫入“system.profile”這個(gè)系統(tǒng)級(jí)的collection中。請參看mongod profiler相關(guān)文檔时迫。默認(rèn)值為100颅停,此值只對(duì)mongod進(jìn)程有效。
mode: off 數(shù)據(jù)庫profiler級(jí)別掠拳,操作的性能信息將會(huì)被寫入日志文件中癞揉,可選值:
1)off:關(guān)閉profiling
2)slowOp:on,只包含慢操作日志
3)all:on溺欧,記錄所有操作
數(shù)據(jù)庫profiling會(huì)影響性能喊熟,建議只在性能調(diào)試階段開啟。此參數(shù)僅對(duì)mongod有效姐刁。

主從復(fù)制

replication:
名稱 說明
oplogSizeMB: 10240 replication操作日志的最大尺寸芥牌,單位:MB。mongod進(jìn)程根據(jù)磁盤最大可用空間來創(chuàng)建oplog龙填,比如64位系統(tǒng)胳泉,oplog為磁盤可用空間的5%拐叉,一旦mongod創(chuàng)建了oplog文件岩遗,此后再次修改oplogSizeMB將不會(huì)生效。此值不要設(shè)置的太小凤瘦, 應(yīng)該足以保存24小時(shí)的操作日志宿礁,以保證secondary有充足的維護(hù)時(shí)間;如果太小蔬芥,secondary將不能通過oplog來同步數(shù)據(jù)梆靖,只能全量同步。
enableMajorityReadConcern: false 是否開啟readConcern的級(jí)別為“majority”笔诵,默認(rèn)為false返吻;只有開啟此選項(xiàng),才能在read操作中使用“majority”乎婿。(3.2+版本)
replSetName: <無默認(rèn)值> “復(fù)制集”的名稱测僵,復(fù)制集中的所有mongd實(shí)例都必須有相同的名字,sharding分布式下,不同的sharding應(yīng)該使用不同的replSetName
secondaryIndexPrefetch: all 只對(duì)mmapv1存儲(chǔ)引擎有效捍靠。復(fù)制集中的secondary沐旨,從oplog中運(yùn)用變更操作之前,將會(huì)先把索引加載到內(nèi)存中榨婆,默認(rèn)情況下磁携,secondaries首先將操作相關(guān)的索引加載到內(nèi)存,然后再根據(jù)oplog應(yīng)用操作良风∫昶可選值:
1)none:secondaries不將索引數(shù)據(jù)加載到內(nèi)容
2)all:sencondaries將此操作有關(guān)的索引數(shù)據(jù)加載到內(nèi)存
3)_id_only:只加載_id索引
默認(rèn)值為:all,此配置僅對(duì)mongod有效拖吼。
localPingThresholdMs: 15 ping時(shí)間鳞上,單位:毫秒,mongos用來判定將客戶端read請求發(fā)給哪個(gè)secondary吊档。僅對(duì)mongos有效篙议。默認(rèn)值為15,和客戶端driver中的默認(rèn)值一樣怠硼。當(dāng)mongos接收到客戶端read請求鬼贱,它將:
1、找出復(fù)制集中ping值最小的member香璃。
2这难、將延遲值被此值允許的members,構(gòu)建一個(gè)列表
3葡秒、從列表中隨機(jī)選擇一個(gè)member姻乓。
ping值是動(dòng)態(tài)值,每10秒計(jì)算一次眯牧。mongos將客戶端請求轉(zhuǎn)發(fā)給延遲較刑Q摇(與此值相比)的某個(gè)secondary節(jié)點(diǎn)。

sharding架構(gòu)

sharding:
名稱 說明
clusterRole: <無默認(rèn)值> 在sharding集群中学少,此mongod實(shí)例的角色剪个,可選值:
1、configsvr:此實(shí)例為config server版确,此實(shí)例默認(rèn)偵聽27019端口
2扣囊、shardsvr:此實(shí)例為shard(分片),偵聽27018端口
此配置僅對(duì)mongod有效绒疗。通常config server和sharding server需要使用各自的配置文件侵歇。
archiveMovedChunks: true 當(dāng)chunks因?yàn)椤柏?fù)載平衡”而遷移到其他節(jié)點(diǎn)時(shí),mongod是否將這些chunks歸檔吓蘑,并保存在dbPath下“moveChunk”目錄下惕虑,mongod不會(huì)刪除moveChunk下的文件。默認(rèn)為true。
autoSplit: true 是否開啟sharded collections的自動(dòng)分裂枷遂,僅對(duì)mongos有效樱衷。如果所有的mongos都設(shè)定為false,那么collections數(shù)據(jù)增長但不能分裂成新的chunks酒唉。因?yàn)榧褐腥魏我粋€(gè)mongos進(jìn)程都可以觸發(fā)split矩桂,所以此值需要在所有mongos行保持一致。僅對(duì)mongos有效痪伦。
configDB: <無默認(rèn)值> 設(shè)定config server的地址列表侄榴,每個(gè)server地址之間以“,”分割,通常sharded集群中指定1或者3個(gè)config server网沾。(生產(chǎn)環(huán)境癞蚕,通常是3個(gè)config server,但1個(gè)也是可以的)辉哥。所有的mongos實(shí)例必須配置一樣桦山,否則可能帶來不必要的問題。
chunkSize: 64 sharded集群中每個(gè)chunk的大小醋旦,單位:MB恒水,默認(rèn)為64,此值對(duì)于絕大多數(shù)應(yīng)用而言都是比較理想的饲齐。chunkSize太大會(huì)導(dǎo)致分布不均钉凌,太小會(huì)導(dǎo)致分裂成大量的chunk而經(jīng)常移動(dòng). 整個(gè)sharding集群中,此值需要保持一致捂人,集群啟動(dòng)后修改此值將不再生效御雕。

系統(tǒng)日志

systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log
名稱 說明
verbosity: 0 日志級(jí)別,0:默認(rèn)值滥搭,包含“info”信息酸纲,1~5,即大于0的值均會(huì)包含debug信息
quiet: true "安靜"论熙,此時(shí)mongod/mongos將會(huì)嘗試減少日志的輸出量福青。不建議在production環(huán)境下開啟摄狱,否則將會(huì)導(dǎo)致跟蹤錯(cuò)誤比較困難脓诡。
traceAllExceptions: true 打印異常詳細(xì)信息。
path: logs/mongod.log 日志路徑
logAppend: false 如果為true媒役,當(dāng)mongod/mongos重啟后祝谚,將在現(xiàn)有日志的尾部繼續(xù)添加日志。否則酣衷,將會(huì)備份當(dāng)前日志文件交惯,然后創(chuàng)建一個(gè)新的日志文件;默認(rèn)為false。
logRotate: rename 日志“回轉(zhuǎn)”席爽,防止一個(gè)日志文件特別大意荤,則使用logRotate指令將文件“回轉(zhuǎn)”,可選值:
1)rename:重命名日志文件只锻,默認(rèn)值玖像。
2)reopen:使用linux日志rotate特性,關(guān)閉并重新打開此日志文件齐饮,可以避免日志丟失捐寥,但是logAppend必須為true。
destination: file 日志輸出目的地祖驱,可以指定為“ file”或者“syslog”握恳,表述輸出到日志文件,如果不指定捺僻,則會(huì)輸出到標(biāo)準(zhǔn)輸出中(standard output)

與安全有關(guān)的配置

security:  
    authorization: enabled  
    clusterAuthMode: keyFile  
    keyFile: /srv/mongodb/keyfile  
    javascriptEnabled: true  
setParameter:   
    enableLocalhostAuthBypass: true  
    authenticationMechanisms: SCRAM-SHA-1  
名稱 說明
authorization disabled或者enabled乡洼,僅對(duì)mongod有效;表示是否開啟用戶訪問控制(Access Control)匕坯,即客戶端可以通過用戶名和密碼認(rèn)證的方式訪問系統(tǒng)的數(shù)據(jù)就珠,默認(rèn)為“disabled”,即客戶端不需要密碼即可訪問數(shù)據(jù)庫數(shù)據(jù)醒颖。(限定客戶端與mongod妻怎、mongos的認(rèn)證)
clusterAuthMode 集群中members之間的認(rèn)證模式,可選值為“keyFile”泞歉、“sendKeyFile”逼侦、“sendX509”、“x509”腰耙,對(duì)mongod/mongos有效榛丢;默認(rèn)值為“keyFile”,mongodb官方推薦使用x509挺庞,不過我個(gè)人覺得還是keyFile比較易于學(xué)習(xí)和使用晰赞。不過3.0版本中,mongodb增加了對(duì)TLS/SSL的支持选侨,如果可以的話掖鱼,建議使用SSL相關(guān)的配置來認(rèn)證集群的member,此文將不再介紹援制。(限定集群中members之間的認(rèn)證)
keyFile 當(dāng)clusterAuthMode為“keyFile”時(shí)戏挡,此參數(shù)指定keyfile的位置,mongodb需要有訪問此文件的權(quán)限晨仑。
javascriptEnabled true或者false褐墅,默認(rèn)為true拆檬,僅對(duì)mongod有效;表示是否關(guān)閉server端的javascript功能妥凳,就是是否允許mongod上執(zhí)行javascript腳本竟贯,如果為false,那么mapreduce逝钥、group命令等將無法使用澄耍,因?yàn)樗鼈冃枰趍ongod上執(zhí)行javascript腳本方法。如果你的應(yīng)用中沒有mapreduce等操作的需求晌缘,為了安全起見齐莲,可以關(guān)閉javascript。
setParameter 允許指定一些的Server端參數(shù)磷箕,這些參數(shù)不依賴于存儲(chǔ)引擎和交互機(jī)制选酗,只是微調(diào)系統(tǒng)的運(yùn)行狀態(tài),比如“認(rèn)證機(jī)制”岳枷、“線程池參數(shù)”等芒填。參見【parameter】
enableLocalhostAuthBypass true或者false,默認(rèn)為true空繁,對(duì)mongod/mongos有效殿衰;表示是否開啟“l(fā)ocalhost exception”,對(duì)于sharding cluster而言盛泡,我們傾向于在mongos上開啟闷祥,在shard節(jié)點(diǎn)的mongod上關(guān)閉。
authenticationMechanisms 認(rèn)證機(jī)制傲诵,可選值為“SCRAM-SHA-1”凯砍、“MONGODB-CR”、“PLAN”等拴竹,建議為“SCRAM-SHA-1”悟衩,對(duì)mongod/mongos有效;一旦選定了認(rèn)證機(jī)制栓拜,客戶端訪問databases時(shí)需要與其匹配才能有效座泳。

性能有關(guān)的參數(shù)

setParameter:  
    connPoolMaxShardedConnsPerHost: 200  
    connPoolMaxConnsPerHost: 200  
    notablescan: 0 
名稱 說明
connPoolMaxShardedConnsPerHost 默認(rèn)值為200,對(duì)mongod/mongos有效幕与;表示當(dāng)前mongos或者shard與集群中其他shards鏈接的鏈接池的最大容量挑势,此值我們通常不會(huì)調(diào)整。連接池的容量不會(huì)阻止創(chuàng)建新的鏈接纽门,但是從連接池中獲取鏈接的個(gè)數(shù)不會(huì)超過此值薛耻。維護(hù)連接池需要一定的開支营罢,保持一個(gè)鏈接也需要占用一定的系統(tǒng)資源赏陵。
connPoolMaxConnsPerHost 默認(rèn)值為200饼齿,對(duì)mongod/mongos有效;同上蝙搔,表示mongos或者mongod與其他mongod實(shí)例之間的連接池的容量缕溉,根據(jù)host限定。

配置樣例

systemLog:
    quiet: false
    path: /data/mongodb/logs/mongod.log
    logAppend: false
    destination: file
processManagement:
    fork: true
    pidFilePath: /data/mongodb/mongod.pid
net:
    bindIp: 127.0.0.1
    port: 27017
    maxIncomingConnections: 65536
    wireObjectCheck: true
    ipv6: false 
storage:
    dbPath: /data/mongodb/db
    indexBuildRetry: true
    journal:
        enabled: true
    directoryPerDB: false
    engine: mmapv1
    syncPeriodSecs: 60 
    mmapv1:
        quota:
            enforced: false
            maxFilesPerDB: 8
        smallFiles: true    
        journal:
            commitIntervalMs: 100
    wiredTiger:
        engineConfig:
            cacheSizeGB: 8
            journalCompressor: snappy
            directoryForIndexes: false  
        collectionConfig:
            blockCompressor: snappy
        indexConfig:
            prefixCompression: true
operationProfiling:
    slowOpThresholdMs: 100
    mode: off

如果你的架構(gòu)模式為replication Set吃型,那么還需要在所有的“復(fù)制集”members上增加如下配置:

replication:
    oplogSizeMB: 10240
    replSetName: rs0
    secondaryIndexPrefetch: all

如果為sharding Cluster架構(gòu)证鸥,則需要在shard節(jié)點(diǎn)增加如下配置:

sharding:
    clusterRole: shardsvr
    archiveMovedChunks: true
systemLog:
    quiet: false
    path: /data/mongodb/logs/mongod.log
    logAppend: false
    destination: file
processManagement:
    fork: true
    pidFilePath: /data/mongodb/mongod.pid
net:
    bindIp: 127.0.0.1
    port: 37017
    maxIncomingConnections: 65536
    wireObjectCheck: true
    ipv6: false 
replication:
    localPingThresholdMs: 15            
sharding:
    autoSplit: true
    configDB: m1.com:27018,m2.com:27018,m3.com:27018
    chunkSize: 64

mongos實(shí)例不需要存儲(chǔ)實(shí)際的數(shù)據(jù),對(duì)內(nèi)存有一定的消耗勤晚,在sharding架構(gòu)模式下使用枉层;mongos需接收向客戶端請求(后端的sharded和replication set則不需要讓客戶端知道),它可以將客戶端請求轉(zhuǎn)發(fā)到一個(gè)分片集群上(分片集群基于復(fù)制集)延遲相對(duì)較小的secondary上赐写,同時(shí)還負(fù)責(zé)chunk的分裂和遷移工作鸟蜡。

repair修復(fù)

“修復(fù)”數(shù)據(jù)庫,當(dāng)mongodb運(yùn)行一段時(shí)間之后挺邀,特別是經(jīng)過大量刪除揉忘、update操作之后,我們可以使用repair指令對(duì)數(shù)據(jù)存儲(chǔ)進(jìn)行“repair”端铛,它將整理泣矛、壓縮底層數(shù)據(jù)存儲(chǔ)文件,重用磁盤空間禾蚕,相當(dāng)于數(shù)據(jù)重新整理了一遍您朽,對(duì)數(shù)據(jù)優(yōu)化有一定的作用。

$ ./mongod --dbpath=/data/mongodb/db --repair

mongodump與mongorestore

我們通常會(huì)使用到mongodb數(shù)據(jù)的備份功能换淆,或者將一個(gè)備份導(dǎo)入到一個(gè)新的mongod實(shí)例中(數(shù)據(jù)冷處理)虚倒,那么就需要借助這兩個(gè)指令。

  • 備份
>./mongodump --host m1.com --port 27017 -u root -p pass --out /data/mongodb/backup/dump_2015_10_10
  • 還原
./mongorestore --db mydatabase /data/mongodb/backup/dump_2015_10_10  

mongoimport和mongoexport

mongoexport將數(shù)據(jù)導(dǎo)出為JSON或者CSV格式产舞,以便其他應(yīng)用程序解析魂奥。

mongo shell

1)help:列出所有的function
2)show dbs:展示當(dāng)前實(shí)例中所有的databases。
3)use <dbname>:切換到指定的db易猫,接下來的操作將會(huì)在此db中耻煤。
4)show collections:展示出當(dāng)前db中所有的collections。
5)show users:展示當(dāng)前db中已經(jīng)添加的所有用戶准颓。
6)show roles:展示當(dāng)前db中所有內(nèi)置的或者自定義的用戶角色哈蝇。
7)show profile:這涉及到profile相關(guān)的配置,默認(rèn)情況下展示出最近5個(gè)操作耗時(shí)超過1秒的操作攘已,通常用于跟蹤慢查詢炮赦。
8)db.help():展示出可以在db上進(jìn)行的操作function。
9)db.<collection>.help():展示出可以在colleciton上進(jìn)行的操作样勃。

我的博客

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末吠勘,一起剝皮案震驚了整個(gè)濱河市性芬,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌剧防,老刑警劉巖植锉,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異峭拘,居然都是意外死亡俊庇,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門鸡挠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來辉饱,“玉大人,你說我怎么就攤上這事拣展⌒遥” “怎么了?”我有些...
    開封第一講書人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵瞎惫,是天一觀的道長溜腐。 經(jīng)常有香客問我,道長瓜喇,這世上最難降的妖魔是什么挺益? 我笑而不...
    開封第一講書人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮乘寒,結(jié)果婚禮上望众,老公的妹妹穿的比我還像新娘。我一直安慰自己伞辛,他們只是感情好烂翰,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蚤氏,像睡著了一般甘耿。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上竿滨,一...
    開封第一講書人閱讀 49,079評(píng)論 1 285
  • 那天佳恬,我揣著相機(jī)與錄音,去河邊找鬼于游。 笑死毁葱,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的贰剥。 我是一名探鬼主播倾剿,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼蚌成!你這毒婦竟也來了前痘?” 一聲冷哼從身側(cè)響起凛捏,我...
    開封第一講書人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎际度,沒想到半個(gè)月后葵袭,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體涵妥,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡乖菱,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了蓬网。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片窒所。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖帆锋,靈堂內(nèi)的尸體忽然破棺而出吵取,到底是詐尸還是另有隱情,我是刑警寧澤锯厢,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布皮官,位于F島的核電站,受9級(jí)特大地震影響实辑,放射性物質(zhì)發(fā)生泄漏捺氢。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一剪撬、第九天 我趴在偏房一處隱蔽的房頂上張望摄乒。 院中可真熱鬧,春花似錦残黑、人聲如沸馍佑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽拭荤。三九已至,卻和暖如春疫诽,著一層夾襖步出監(jiān)牢的瞬間穷劈,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來泰國打工踊沸, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留歇终,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓逼龟,卻偏偏與公主長得像评凝,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子腺律,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容