任务:从Oracle中导出一份用户数据作初始化mongodb。 ##数据准备 写好sql放进Oracle中执行,导出格式选择json,csv customer_json.dat customer_csv.dat 为了方便查询、兼容现有程序,修改字段名称. json: csv: ##使用json格式 ./mongoimport -p password -u username -d workDB -c customer customer_json.dat ##使用csv格式 ./mongoimport -p password -u username -d workdb -c customer --type csv --headerline --file customer_csv.dat ##验证 use workdb db.customer.stats() …
mongodb用户授权
mongo安装、用户授权 最近开发的项目中使用了mongodb3.0,这一也是第一次在实际项目中使用mongodb,项目初期开发并没有使用验证,在今天下午review中把这个遗留问题提上了议程,着手开始设置mongodb的用户权限。能找到的资料都是3.0之前的版本,只好老老实实看官方的文档,目前大部分mongodb的GUI客户端工具不能很好的兼容3.0版本,并不是所有人都喜欢对着shell开发或是要使用3.0的新功能,所以请大家注意自己选择的版本。 准备工作 mongodb下载 官方下载地址 brew install mongodb –with-openssl 设置环境变量 export PATH=<mongodb-install-directory>/bin:$PATH 在mongdb根目录下创建数据文件目录(db/data)、日志文件目录 (da/log) mongodb 3.0用户创建、授权 使用非认证方式启动mongodb创建管理用户 mongod --dbpath "db/data" --logpath "db/log/db.log" use admin db.createUser({ user: "admin", pwd: "12345678", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] }) db.shutdownServer() 使用认证方式启动mongodb mongod --dbpath "db/data" --logpath "db/log/db.log" --auth use admin db.auth("buru","12345678") 返回1表示成功,此时“admin”账号只有管理功能。 使用用户库,创建用户 use crs db.createUser({ user: "crs", pwd: "12345678", roles: [ { role: "readWrite", db: "crs" }, { role: "read", db: "crs_bak" } ]}) db.auth("crs","12345678") 仍然是返回1,成功,此时就可以使用insert方法向“crs”库中添加数据了。 注:目前Robomongo还不能使用授权方式访问3.0的mongodb, …
有广度更要有深度
对待知识的态度依然有些浮躁。 起因 2015已经过了将近一半,上半年除了换了工作时突击了些技术,其他方面感觉没有什么提高,工资涨了一些,生活还是没有什么变化。周末拿了一本《Hadoop 权威指南》,也在电脑上搭建了单机的环境,一切就绪,打开书的前几章就有些感觉头大,很多概念不理解,晚上的时候改变了策略,要不先从稍“容易”些的项目着手吧,从开源中国上面找了几个项目,两个远程调用框架,一个web框架,一个消息队列。打开源码后,从test一步步跟进去,却发现有太多的基础不理解,时不时都要中断一下去查查JDK提供的基础方法。 思考 是否是自己方法错了,不应该从这些现有的框架中直接来学习,而且要先巩固JDK基础,比如NIO,网络编程等等。 IT本来就是一个靠技术吃饭的行业,虽然这些年一直没有停止学习,但一直没有重点,什么都会一点点,儿什么也不是那么精通,广度决定视野,深度决定地位。选择一个方向潜下心钻进去。 这个方向一定要是工作、生活用得着的,换句话就是能够转化为生产力的,之前为太多的技术付出了时间,但最终也只是写写demo、会用一些API而已,这样过一段时间以后会很快忘记之前学到的,付出的成本并没有得到回报。 那么还是从基础做起吧,方向深入JDK 计划 技术: NIO 并发、多线程 网络编程 序列化 设计模式 各种算法 生活: 晚上跑步 睡前俯卧撑 ** 待补充,未排序、放入计划的内容列表** 杂记 最近ssnode提供的翻墙服务十分不稳定,找回app engine上的app id在mac上搭建了goagent,以前使用chrome + switch,换了Mac以后就一直用Safari,在“系统设置-网络-高级-代理”里面有一个自动代理配置,不过这里只接受URL方式的参数,有两种方式解决:1.本地搭建一个http服务;2.直接放在github里,就像之前做的Mac日历同步的数据一样,使用saw方式直接访问文件内容就可以,又可以享受自由的网络了。 …
hadoop-单用户部署
Mac上单机模式部署hadopp2.7.0 1.Hadoop下载 hadoop-2.7.0 2.配置修改 etc/hadoop/hadoop-env.sh # set to the root of your Java installation export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home 可以使用java -verbose查看Mac当前JDK的安装路径 etc/hadoop/core-site.xml <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration> etc/hadoop/hdfs-site.xml <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration> ssh 打开mac的ssh服务在“系统偏好设置–>共享–>远程登录” 使用如下命令测试 ssh localhost 此时需要配置自动登录 $ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa $ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys $ export HADOOP\_PREFIX=/usr/local/hadoop 3.启动&测试 初始化文件系统 $ bin/hdfs namenode -format 启动文件服务 $ sbin/start-dfs.sh 访问http://localhost:50070/,查看服务状态 测试 $ mkdir input $ cp etc/hadoop/*.xml input $ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar grep input output 'dfs[a-z.]+' $ cat output/* 参考: 官方文档 …
五一前夕
没有付出行动,还期望能有改变,真是白日做梦。 在网上漫无目的的瞎逛时看到了一篇中学时期要求背诵的古文 于是余有叹焉。古人之观于天地、山川、草木、虫鱼、鸟兽,往往有得,以其求思之深而无不在也。夫夷以近,则游者众;险以远,则至者少。而世之奇伟、瑰怪,非常之观,常在于险远,而人之所罕至焉,故非有志者不能至也。有志矣,不随以止也,然力不足者,亦不能至也。有志与力,而又不随以怠,至于幽暗昏惑而无物以相之,亦不能至也。然力足以至焉,于人为可讥,而在己为有悔;尽吾志也而不能至者,可以无悔矣,其孰能讥之乎?此余之所得也! —王安石《游褒禅山记》 首先想到的是这篇古文是要求背诵的,当时背诵一篇古文真是痛苦至极,一晚上都不一定能背得下来,第二天上课还要提心吊胆的上语文老师的课,生怕被点名当堂背诵,然后就是作者想表达的深层意义,对于当时那个年代的我连古文句子都读不通,更不同说理解了,但现在有了些生活的经历后再看它,多少有些和作者相同的感受。 …
First Commit
"The beginning is the most important part of the work." Plato I have been away from the blogging scene for quite a while now, suddenly today it dawned upon me that I need to start writing/posting again. My writing is a little bit rusty now, and I need to brush on that. Anyways, the moment I thought about blogging, Wordpress flashed in my mind. Well, I used Wordpress 1 in the past and it worked well for a while, then I had to face issues like high-traffic and high CPU load and unexpected spikes in my server. Well, those weren’t...…