最近在看斯坦福大学的数据库系统实现(第二版),打算详细研究一下数据库,因而下载了Redbase的代码来分析,具体的github地址为:https://github.com/junkumar/redbase
在centos6.6_X64下编译中间碰到各种问题,主要是缺库,如cannot find -lstdc++ 等,其解决方法是:
Centos 6.6 X86_64下编译C++程序报cannot find -lstdc++原因:缺少libstdc++库
解决:root用户执行
(1)yum install libstdc++-4.4.7-18.el6.x86_64
(2)yum install libstdc++-4.4.7-18.el6.i686
问题解决。
库的问题解决后,又碰到以下报错:
find . -type f | grep -v "\.git" | grep -v docs |xargs etags
xargs: etags: No such file or directory
修改Makefile文件,将其中的xargs etags 去掉,再次make通过,在src目录下可以看到dbcreate、redbase等应用程序,可以通过命令行执行了。
(1)创建数据库
root#./dcreate mydatabase
可以看到目录下创建了mydatabase文件夹,文件夹下有两个文件
[root@cloudera-bigdata src]# cd mydatabase/
[root@cloudera-bigdata mydatabase]# ll
total 24
-rw------- 1 root root 12288 May 18 11:14 attrcat
-rw------- 1 root root 12288 May 18 11:14 relcat
(2)打开数据库
root#./redbase mydatabase
REDBASE >>
打开成功,出现REDBASE提示符。