linux配置python虚拟环境_Python配置虚拟环境以及安装/连接mysql(Linux-Ubuntu)

本文介绍了如何在Linux(Ubuntu)上配置Python虚拟环境,使用virtualenv和virtualenvwrapper,以及如何安装和连接MySQL。首先,通过pip安装virtualenv和virtualenvwrapper,然后设置环境变量并创建虚拟环境。接着,安装MySQL,允许远程访问,并在Python中安装mysqlclient库,实现Python连接MySQL。最后,给出了通过Python和MySQLdb获取数据的示例代码。

虚拟环境是一个将不同项目所需求的依赖分别放在独立的地方的一个工具,它给这些工程创建虚拟的 Python环境。它解决了“项目X依赖于版本1.x,而项目Y需要项目4.x”的两难问题,而且使你的全局 site-packages目录保持干净和可管理。

比如,你可以工作在一个需求Django 1.10的工程,同时维护一个需求Django 1.8的工程。

No1.安装virtualenv

virtualenv 是一个创建隔绝的Python环境的 工具。virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包。

通过pip安装virtualenv(pip安装:sudo apt-get python-pip):

$ pip install virtualenv

测试你的安装

$ virtualenv --version

No2.安装virtualenvwrapper

$ pip install virtualenvwrapper(权限报错就加sudo)

这里如果你报错,类似这样子的。

Traceback (most recent call last):

File "", line 1, in

File "/tmp/pip-build-6hblrn57/virtualenvwrapper/setup.py", line 7, in

pbr=True,

File "/usr/lib/python3.5/distutils/core.py", line 108, in setup

_setup_distribution = dist = klass(attrs)

File "/usr/lib/python3/dist-packages/setuptools/dist.py", line 269, in __init__

self.fetch_build_eggs(attrs['setup_requires'])

File "/usr/lib/python3/dist-packages/setuptools/dist.py", line 313, in fetch_build_eggs

replace_conflicting=True,

File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 826, in resolve

。。。。。。。。。。。。。。。。。。

大致类似上面这种。

你可以这样尝试。

sudo pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pbr

sudo pip install -i https://pypi.tuna.tsinghua.edu.cn/simple--no-deps stevedore

sudo pip install -i https://pypi.tuna.tsinghua.edu.cn/simple--no-deps virtualenvwrapper

如果上面的尝试报这样的错。

Could not find a version that satisfies the requirement virtualenvwrapper (from versions: )

No matching distribution found for virtualenvwrapper

配置virtualenvwrapper

$ sudo find / -name virtualenvwrapper.sh

执行完为显示出virtualenvwrapper.sh的路径

把virtualenvwrapper.sh的路径复制下来

然后运行下面的命令进入bashrc

$ vim ~/.bashrc

在bashrc文件中加入下面两行

export WORKON_HOME=$HOME/.virtualenvs

source /usr/local/bin/virtualenvwrapper.sh

保存文件并且退出(vim保存退出 按esc,输入:wp 回车,ctrl+z直接退出)

然后输入命令

$ source ~/.bashrc

这里有可能有的人会报错。大概是这样的。

/usr/bin/python: No module named virtualenvwrapper

virtualenvwrapper.sh: There was a problem running the initialization hooks.

If Python could not import the module virtualenvwrapper.hook_loader,

check that virtualenvwrapper has been installed for

VIRTUALENVWRAPPER_PYTHON=/usr/bin/python and that PATH is

set properly.

这样的话你要检查一下,你是不是安装的python3,并且你安装virtualenv用的pip3安装的?如果是的,请你在bash文件加上这一句

export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3

python3的路径可能有的人时usr/bin/python3,按照自己的填写上去。

创建虚拟环境

python3环境的创建

$ mkvirtualenv -p /usr/bin/python3 test_py3

python2环境的创建

$ mkvirtualenv test_py2

进入虚拟环境

$ workon test_py3

运行python查看版本为python3,成功!

退出虚拟环境

$ deactivate

删除虚拟环境

$ rmvirtualenv [环境名]

列出所有虚拟环境

$ workon

No3.python Mysql

MySQL 安装

$ sudo apt-get install mysql-server

登录

$ mysql -uroot -p

提示输入密码 输入root

成功进入mysql

让MySQL服务器被远程访问

打开mysql配置文件

$ sudo vim /etc/mysql/my.cnf

找到bind-address = 127.0.0.1

更改为bind-address = 0.0.0.0

修改后,重启MySQL服务器

$ sudo server mysql restart

检查mysql运行情况

$ ps aux|grep mysqld

重新登录

$ mysql -uroot -p

还需要在mysql中输入一下命令

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;

这个命令是权限赋值命令,为了简单实用,我把所有的权限都给赋值,*.*其实是一个正则表达式,表示所有的表都要赋权限,这个权限是通过root用户连接过来,%代表所有的外部ip,这里也可以指明某一个ip,就是任何的ip只要通过root用户(后面IDENTIFIED BY '你的密码'意思是root的密码为你自己设置的登录密码)你都可以访问所有表

执行完之后刷新

flush privileges;

python-MySQLdb安装

首先进入虚拟环境

$ workon test_py3

(test_py3)xxx@xxx:~$ pip install mysqlclient

然后进入python

>>>import MySQLdb

正常导入不报错就说明安装成功(一定要注意大小写,python对字母大小写非常敏感!)

No4.通过python和MySQLdb获取数据

以下是python连接mysql并且获取一条数据的代码

我演示一下

成功获取!

到这里Python配置虚拟环境以及安装/连接mysql就搞定了!

欢迎大家来评论、批评指正!

2017.09.10更新

-------------------------------

关于Mac下的mysql安装和配置,一般mysql在Linux和windows安装套路大体一致,但是mac上会存在一些不一致的地方。

安装mysql其实很简单,官网下或者终端上homebrew安装,但是安装好之后我要配置cnf文件的时候按照linux安装方法你会找不到配置文件,mac下的cnf文件在/usr/local/etc下面去找会找到my.cnf文件,没有的话创建一个。然后安装好mysql.server start开启mysql服务,然后mysql -uroot -p登录发现要密码,唉?我没设置啊?这个时候就会蛋疼了,其实很简单,

进入终端cd 进 /usr/local/mysql/bin/

输入 :

./mysqld_safe --skip-grant-tables &

enter后mysql会自动重启

再输入命令 ./mysql就进入mysql的client了

输入命令

FLUSH PRIVILEGES;

再输入命令

SET PASSWORD FOR 'root'@'localhost' = 'PASSWORD'('重新设置你的密码');

好了,然后后面你可以设置权限了

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;

然后退出quit;

之后在mysql -uroot -p登录就输入你刚刚设置的密码就可以了。

--------------更新完毕--------------

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值