CentOS 6.X 自带的python版本是 2.6 , 但是2.6已经被不被官方支持了,今天写后台程序放到阿里云上运行发现2.6的一些api和2.7不一样了。于是想升级下python

安装依赖包

yum install -y zlib-devel bzip2-devel openssl-devel xz-libs wget

源码编译

wget http://www.python.org/ftp/python/2.7.8/Python-2.7.8.tar.xz
# 可以使用国内的源
wget http://mirrors.sohu.com/python/2.7.8/Python-2.7.8.tar.xz
xz -d Python-2.7.8.tar.xz
tar -xvf Python-2.7.8.tar

安装详情:

# 进入目录:
cd Python-2.7.8
# 运行配置 configure:
./configure --prefix=/usr/local
# 编译安装:
make
make altinstall
# 检查 Python 版本:
[root@dbmasterxxx ~]# python2.7 -V
Python 2.7.8

链接python

为了使我们刚安装的2.7.8 生效要么加入PATH目录要么进入软连接:

加入PATH

export PATH="/usr/local/bin:$PATH"

软连接

#如果连接时提示错误“ln: creating symbolic link `/usr/bin/python': File exists”则先改名
mv /usr/bin/python /usr/bin/python2.6
ln -s /usr/local/bin/python2.7 /usr/bin/python

检查

[root@dbmasterxxx ~]# python -V
Python 2.7.8
[root@dbmasterxxx ~]# which python
/usr/bin/python

安装 setuptools

#获取软件包
wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz
# 解压:
tar -xvf setuptools-1.4.2.tar.gz
cd setuptools-1.4.2
# 使用 Python 2.7.8 安装 setuptools
python2.7 setup.py install

安装 PIP

curl https://bootstrap.pypa.io/get-pip.py | python2.7 -

修复 yum 工具

此时yum应该是失效的,因为此时默认python版本已经是2.7了。而yum需要的是2.6 所以:

#修改 yum中的python
将第一行 #!/usr/bin/python 改为 #!/usr/bin/python2.6

安装sqlite3

yum install sqlite-devel
pip install pysqlite
#重新编译python