Python部署mongodb数据库

注:此环境只适用于centos6版本系统,7版本不需要安装glibc

#!/usr/bin/env python
#coding:utf-8

import os
import zipfile
import tarfile
import shutil

line = os.linesep
script_path = os.getcwd()
glibc_package = 'glibc-2.14.zip'
mongo_package = 'mongodb-linux-x86_64-rhel70-3.2.8.tgz'
mongo_path = '/usr/local/mongodb/'

def decomPression():
    try:
        z = zipfile.ZipFile(glibc_package, 'r')
        z.extractall()
        z.close()
    except:
        print "zip解压失败"
    try:
        t = tarfile.open(mongo_package,'r')
        t.extractall()
        t.close()
    except:
        print "tar解压失败"

def createDirectory():
    shutil.move(script_path+'/mongodb-linux-x86_64-rhel70-3.2.8',mongo_path)
    os.mkdir(mongo_path+'conf')
    os.makedirs('/data/mongodb/logs')
    os.mkdir('/data/mongodb/db')
    shutil.move(script_path+'/mongodb.conf',mongo_path+'conf')
    with open('/etc/profile','a')as f:
        f.write("export PATH=/usr/local/mongodb/bin:$PATH%sexport LD_LIBRARY_PATH=/usr/local/glibc-2.14/lib:$LD_LIBRARY_PATH%sexport LC_ALL=C%s" % (line,line,line))
    os.chdir(script_path+'/glibc-2.14')
    os.mkdir('build')
    os.chdir('build')

def comPiled():
    try:
        os.system("chmod +x %s/glibc-2.14/*" % script_path)
        os.system("chmod +x %s/glibc-2.14/scripts/*" % script_path)
        os.system('../configure --prefix=/usr/locsal/glibc-2.14')
        os.system('make -j4')
        os.system('make install')
    except:
        print "编译失败,请检查"

def startService():
    os.system('source /etc/profile')
    os.system('%sbin/mongod -f /usr/local/mongodb/conf/mongodb.conf' % mongo_path)

decomPression()
createDirectory()
comPiled()
startService()

猜你喜欢

转载自blog.51cto.com/yht1990/2128095