在linux上安装达梦客户端,以及dm_Python
首先,有一点备注下:1)官方建议不要使用root账号安装,所以新建一个用户dmdba(随便起的)2)根据我的安装过程,建议最好全部过程,只出了最后的source过程(下面会提到)全部都直接在改用户下进行,包括从本地上传文件到服务器,也是直接上传到该账号下。之前安装过程中,因为使用的是duser用户登录,所以文件是先上传到duser用户下的,虽然之后都赋予了权限,但是仍然出现各种文件路径权限问题。所
首先,有一点备注下:
1)官方建议不要使用root账号安装,所以新建一个用户dmdba(随便起的)
2)根据我的安装过程,建议最好全部过程,只出了最后的source过程(下面会提到)全部都直接在改用户下进行,包括从本地上传文件到服务器,也是直接上传到该账号下。之前安装过程中,因为使用的是duser用户登录,所以文件是先上传到duser用户下的,虽然之后都赋予了权限,但是仍然出现各种文件路径权限问题。所以后来重新整理:先新建用户dmdba,之后从本地上传安装包到服务器,到安装过程,全部都直接在dmdba用户下操作。会省了很多麻烦。
下面介绍步骤:
1:服务器新建用户
[root@ bin]# useradd dmdba --增加一个dmbda的用户
[root@ bin]# passwd dmdba --更改dmdba用户的密码
[root@ bin]# <输入密码>
[root@ bin]# <再次输入密码>
[root@ bin]# mkdir /opt/dmdba/dmdbms --在opt这个文件夹下面创建dmdbms的文件夹
[root@ bin]# chown dmdba/opt/dmdba/dmdbms/ -R --级联更改opt目录下的dmdbms文件夹的权限归属为dmdba用户的dmdba组
[root@ bin]# su dmdba
[dmdba@ bin]# chmod 777 /opt/dmdba/dmdbms/ -R --级联赋予opt目录下的dmdbms文件夹下的所有文件及文件夹777的权限
2:上传本地安装文件到服务器,注意直接上传到刚才新建的用户下
scp -r -P 10034 /***本地路径/dm/dmPython_res dmdba@127.0.0.1:/tmp/dm_client
3:进入安装包文件,执行安装指令
./DMInstall.bin -i 开始运行安装文件
安装过程会提示一些需要输入的选项如下:
注意:安装路径自己定义,但是定义的路径必须是dmdba用户可以操作的路径,如我的路径为 /home/dmdba/dmdbms
3、 根据提示完成安装。但是这里只是指的是软件部分安装完成,要想使用,还需要初始化数据库,启动数据库服务。
4、新建两个文件夹,分别存储data和log
mkdir /opt/dmdbms/data
mkdir /opt/dmdbms/elog
cd /home/dmdba/dmdbms/bin # 此处是我的安装路径
./dminit # 执行初始化数据库指令
该过程会让你输入一系列参数,可参考上图进行配置。需要注意的是,data文件夹和elog文件夹需要提前创建,不然会提示错误。
注:上图中让输入的两个路径即为上面新建的两个文件夹;
5、启动数据库服务,此时,需要注意上个步骤结束之后,产生的一个dm.ini文件,该文件路径需要加入到启动数据库服务指令里面。
cd /home/dmdba/dmdbms/bin
./dmserver /opt/dmdbms/data/DAMENG/dm.ini
6.注册数据库服务:
cd /home/dmdba/dmdbms/script/root # 进入安装路径下的该目录下
./dm_service_installer.sh -t dmserver -i /opt/dmdbms//data/DAMENG/dm.ini -p DMSERVER # 该指令为启动数据库服务指令
7、service服务方式设置启动/停止数据库服务:
service DmServiceDMSERVER start|stop|status
8.安装dmPython:下图是我上传到服务器的dmPython源码列表
9、配置root用户的环境变量/root/.bash_profile,添加如下(需根据实际$DM_HOME进行修正):注意是root用户。
vi /root/.bash_profile
export LD_LIBRARY_PATH="/home/dmdba/dmdbms/bin:$LD_LIBRARY_PATH"
export DM_HOME="/home/dmdba"
source /root/.bash_profile
保存退出并source生效;注意,上述指令中的路径需要根据自己的安装路径修改。
10、之后运行
python setup.py install
如果提示找不到IM路径之类的,忘了截图了。。。
可以尝试打印下这个参数:echo $LD_LIBRARY_PATH
检查配置后是否保证正确映射到最新安装的/home/dmdba/dmdbms/bin目录下。
我安装的时候,就是因为之前安装失败过,但是没有删除干净,导致历史遗留的配置干扰了后配置的路径,导致路径不对。修改下就可以了。
可能会提示缺少gcc,使用下列命令安装
yum install gcc
可能会报错提示缺少 python.h 文件,原因为未安装 python-dev 包,在centos上可使用下面命令安装
yum install python-devel
同时需要添加对应的Python环境变量,在root用户的 bash_profile 文件里添加下面语句,其中Python的目录根据系统环境来修改
export C_INCLUDE_PATH=/usr/include/python2.7$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=/usr/include/python2.7:$CPLUS_INCLUDE_PATH
如上图所示,安装成功。
11、安装成功后注释掉root用户环境变量/root/.bash_profile添加的内容:
#export LD_LIBRARY_PATH="/home/dmdba/dmdbms/bin:$LD_LIBRARY_PATH"
#export DM_HOME="/home/dmdba/dmdbms"
保存退出并source生效;
12、测试
import dmPython
conn=dmPython.connect('SYSDBA','SYSDBA','localhost:5236') # 此处的5236是你在安装DM时输入的port参数
print('You have connected with DMserver successfully!')
conn.close()
不出意外,运行之后会打印:
You have connected with DMserver successfully!
如果没有,可以使用下面指令查看数据库服务是否在正常启动着:
service DmServiceDMSERVER status
可以正常导入,应该就代表安装成功了,如果想测试connect,就需要另外启动一个达梦数据库服务端了。
注:上面安装dmPython的镜像,每次重启时,导入import dmPython可能会报错。
此时可以尝试source /root/.bash_profile
重新导入。
如果需要卸载dmpython,可以执行下面指令:
cd /usr/lib64/python2.7/site-packages/
rm -rf dmPython-2.3-py2.7.egg-info
rm -rf dmPython-2.3-py2.7-linux-x86_64.egg
rm -rf dmPython.so
更多推荐
所有评论(0)