linux下python,Virtualenv, Mysql虚拟环境等源码安装部署

一.linux-centos中安装python3.6.8

linux中安装python可以通过源码下载tar包进行安装
提供一个python源码包地址:https://www.python.org/ftp/python,其中包含python各种不同发行版本的安装包,下面以安装python3.6.8版本为例
下载python3.6.8源码包:
wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz
下载完后解压
tar xvf python3.6.8
终端中执行如下命令进行源码安装

1.1安装环境依赖
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

执行如下命令:
mkdir /usr/local/python3
cd /usr/local/python3
wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz
tar -xvf Python-3.6.8.tar.xz
然后进入cd python3/python3.6.8

1.2安装完环境依赖后下载python源码包并执行安装命令

首先新建目录下载make

cd Python3.6.8
./configure ./configure --prefix=/usr/local/python3 --with-ssl   # 配置openssl
make & make install

执行以上命令过程注意root权限问题

执行完以上命令后,Centos中一般原本会自带安装一个python2的版本,先对/usr/bin/python进行重命名
执行如下命令:
mv /usr/bin/python /usr/bin/python2
mv /usr/bin/pip /usr/bin/pip2(也有可能自带的系统环境中没有安装pip)
备份完后设置一下python执行文件的软链接,即执行python命令实际执行的python解释器
ln -s 源文件 目标文件(相当于给源文件创建一个快捷方式)
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip
设置完软连接后通过python -V查看当前系统python的版本为python3.6.8
若配置成功后,pip3用不了,需要进一步配置
将/usr/local/python3/bin加入PATH
vim ~/.bash_profile

 #Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin:/usr/local/python3/bin
export PATH

保存退出后,执行以下命令,让上一步修改成功

source ~/.bash_profile

不过,由于yum是py2写的,所以更换完python路径后,yum可能会出现错误
所以要修改配置文件
vim /usr/bin/yum
vim /usr/libexec/urlgrabber-ext-down
把第一行python改为python2
到此centos中安装python3.6.8结束,也设置好对应的依赖和系统配置

二.Centos中安装Mysql并设置初始密码等配置

linux中安装mysql有两种方式,1是rpm,2是自己配置。rpm类似于直接安装,系统自动配置,这里使用第二种方式

2.1mysql安装包下载配置

linux中mysql安装包下载可以通过官网下载tar.gz文件
第一可以直接去官网https://dev.mysql.com/downloads/mysql/下载对应版本包
第二可以通过wget命令直接下载wget https://zysd-shanghai.oss-cn-shanghai.aliyuncs.com/software/linux/mysql/mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
下载好安装包后可以通过
tar -zxvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz命令进行解压
然后对解析后的文件夹重新命名并将mysl源码包移动到/usr/local/mysql

mv mysql-5.7.23-linux-glibc2.12-x86_64 mysql
mv mysql /usr/local/
cd /usr/local/mysql

执行完上面操作后然后添加mysql用户和用户组

sudo groupadd mysql
sudo useradd -r(建立系统账号) -g(指定用户所属的群组) mysql:mysql
sudo chown -R mysql:mysql /usr/local/mysql  # 更改文件夹所属用户及群组
sudo chmod -R 755 /usr/local/mysql # 设置文件属性

编译安装并初始化mysql,务必记住初始化输出日志末尾的密码(数据库管理员临时密码)
首先在/usr/local/mysql下新建data文件夹用来存放mysql数据,mkdir /usr/local/mysql/data

cd /usr/local/mysql/bin
sudo ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql

执行完编译安装过程后mysql会临时随机生成一个数据登录密码
在这里插入图片描述
如上随机临时密码表示mysql包编译安装成功
如果不想通过–initialize 指定存储路径,mysql服务启动路径的方式启动mysql服务,也可以通过写配置文件my.cnf来启动,位置/etc/my.cnf
my.cnf配置文件如下

[mysqld]
datadir=/usr/local/mysql/data
bind-address = 0.0.0.0 # 表示允许任何主机登陆MySQL
port=3306 # 表示MySQL运行端口为3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=400
innodb_file_per_table=1
lower_case_table_names=1

接下来设置mysql服务启动路径软链接以及更改mysql的root密码
sudo ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
sudo ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
设置好mysql服务软链接后就可以通过
sudo service mysql restart来启动mysql服务

2.2 修改root密码

登录mysql,修改密码
mysql -u root -p
输入临时密码,进入mysql
修改密码
set password for root@localhost = password(‘123456’);(注意加分号)
开放远程连接

mysql>use mysql;
msyql>update user set user.Host='%' where user.User='root';
mysql>flush privileges;

设置开机自动启动
中标:
sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
sudo chmod +x /etc/init.d/mysqld
sudo chkconfig --add mysqld
sudo chkconfig --list
1、执行sysv-rc-conf --level 2345 mysql on,如果提示没有sysv-rc-conf命令,先下载,下载命令:sudo apt-get install sysv-rc-conf
2、查看服务列表sysv-rc-conf --list mysql,如果看到2345都是on,则设置成功
root@192:/home/bigdata# sysv-rc-conf --list mysql 2:on 3:on 4:on 5:on
测试mysql服务是否成功启动
sudo service mysql status  
到此在centos中成功安装Mysql,并进行相应的配置

三.安装Virtualenv虚拟环境并配置

3.1 安装virtualenv并创建虚拟环境

pip install virtualenv
安装完成后创建虚拟环境
使用virtualenv命令创建python虚拟环境:virtualenv [虚拟环境名称]。
   virtualenv oa-env
执行后,在本地会生成一个与虚拟环境同名的文件夹。
如果你的系统里安装有不同版本的python,可以使用–python参数指定虚拟环境的python版本:
virtualenv --python=/usr/local/python-2.7.8/bin/python2.7 env1
  实测默认情况下虚拟环境不会依赖系统环境的global site-packages。比如系统环境里安装了MySQLdb模块,在虚拟环境里import MySQLdb会提示ImportError。如果想依赖系统环境的第三方软件包,可以使用参数–system-site-packages。此外,也可使用virtualenvwrapper的toggleglobalsitepackages命令控制当前环境是否使用global site-packages。
  virtualenv --system-site-packages env1
启动虚拟环境,进入虚拟环境目录,启动虚拟环境,如下:
  cd oa-env/
  source bin/activate
  python -V

此时命令行前面会多出一个括号,括号里为虚拟环境的名称。以后easy_install或者pip安装的所有模块都会安装到该虚拟环境目录里。
退出虚拟环境
  退出虚拟环境:deactivate
使用virtualenvwrapper
  virtualenvwrapper是virtualenv的扩展工具,可以方便的创建、删除、复制、切换不同的虚拟环境。安装virtualenvwrapper   
    easy_install virtualenvwrapper
创建一个文件夹,用于存放所有的虚拟环境:
    mkdir py_vm (目录自定义)
设置环境变量,把下面两行添加到~/.bashrc里。
    export WORKON_HOME=/home/work/py_vm (绝对路径)
    source /usr/bin/virtualenvwrapper.sh
然后就可以使用virtualenvwrapper了。
创建虚拟环境:mkvirtualenv [虚拟环境名称]
    mkvirtualenv env2
    mkvirtualenv env3
注意:mkvirtualenv可以使用virtualenv的参数,比如–python来指定python版本。创建虚拟环境后,会自动切换到此虚拟环境里。虚拟环境目录都在  WORKON_HOME里。
列出所有虚拟环境:lsvirtualenv -b
启动/切换虚拟环境:workon [虚拟环境名称]
进入当前环境的目录:cdvirtualenv
在环境里执行:cdvirtualenv
删除虚拟环境:rmvirtualenv [虚拟环境名称]
cpvirtualenv 复制环境
cpvirtualenv env1 env3 (复制env1到env3)
lssitepackages 列出当前环境中site-packages内容 (在环境中执行)
cdsitepackages 清除环境内所有第三方包

猜你喜欢

转载自blog.csdn.net/qq_42707967/article/details/110122089