前段时间MongoDB黑客赎金事件搞得沸沸扬扬,很多服务器都纷纷中招。最近正好有台新服务器要配置MongoDB的生产环境,于是记录下笔记,简单说下Windows Server系统要如何做好安全防护,防止数据库裸奔被人洗劫。本文重点介绍使用防火墙的白名单模式来限制公网非法IP,降低被攻击的可能性。
网站使用MongoDb数据库,网发布后运行出错,提示数据库连接超时异常(System.TimeoutException)。其实一般只要仔细阅读错误信息,都能找到问题的源头,这里记录下我曾遇到的情况。
本文介绍一个小技巧,通过设置windows系统的path环境变量,使我们可以在cmd命令行中通过任意路径执行mongodb的命令,这样就省去了每次使用cmd运行mongodb都要先进入bin目录。先说下本文的开发环境,系统是win10-64位系统,MongoDB版本为3.2.1。
最近在使用MongoVUE对MongoDB进行管理,作为一个可视化管理工具还是十分方便和快捷。不过刚开始使用时就遇到了一些小问题,在进行修改操作时弹出错误提示:Error in performing Update/cannot use 'j' option when a host does not have journaling enabled。后经过研究,发现造成此问题主要是MongoDB的日志系统未开启,解决方法就是开启MongoDB的日志系统。
前阵子刚开始接触MongoDB,结果一开始就在安装数据库的这个步骤遇到了服务无法启动的问题。根据错误提示得知是由于当前数据库引擎不支持32系统所导致的,解决这个问题很简单,只要切换下MongoDB的默认数据库引擎即可,当然最好是升级到64位系统,毕竟没有2GB的限制而且新引擎的性能也有很大的提升。
在学习到MongoDB的.mongorc.js时,发现写的脚本都没有效果,原来一开始就理解错了用户主目录的意思,我还自己生成了一个.mongorc.js文件放在shell所在目录下,其实在安装MongoDB时就会在系统默认的用户主目录下生成这个文件。
最近买了本MongoDB的书籍来进行学习,在学习到批量插入函数batchInsert的时候,发现会出现错误提示:batchInsert is not a function,经过研究发现这个函数已经过时被废弃使用了,直接使用insert函数就可以了。只能说MongoDB发展和更新的太快,而技术类的书籍中文翻译总会比英文书籍来的更慢,所以导致书中的内容来不及更新了。
在SQL SERVER中如果需要查询出当天、当月和当年的数据,可以通过DATEDIFF函数计算相差时间以获取正确的过滤条件。主要思路是通过DATEDIFF函数计算当前日期与数据日期的天数差、月份差和年数差,如果相差值为0,则表示为当前时间的数据,大于0或小于0则表示数据的时间比当前时间更加早或晚。
在进行SQL SERVER数据库的还原操作时,如果出现错误提示:备份介质集不完整。介质簇计数: 2。缺失的介质簇序列号: 1 。那么肯定就是要还原的数据库备份文件不完整,也就是备份介质缺少了,具体错误截图如下:
在新安装的SQL SERVER 2014上修改表结构,因为默认启用了"阻止保存要求重新创建表的更改",所以导致出现警告,提示不允许保存更改。其实这是一个老早的问题了,这个问题最早出现在SQL SERVER 2008上,只要对数据库进行相关设置即可解决问题,这里做个笔记记录下。
对SQL Server数据库进行还原操作操作时,如果提示未选择要还原的备份集,那么将会导致你无法进行还原操作,要进行还原的数据库名称也不会显示出来。解决此问题很简单,就是创建此数据库的备份集。
在对Microsoft SQL Server 2014进行备份操作的时候,出现错误:"System.Data.SqlClient.SqlError:无法打开备份设备'F:\.....'。出现操作系统错误 5(拒绝访问。)。(Microsoft.SqlServer.Smo)"。出现此错误的主要原因是所选择的备份文件夹没有权限,所以必须为文件夹添加SQLServerMSSQLUser$SQLEXPRESS和SQLServerMSSQLUser$MSSQLEXPRESS用户的所有权限。