1. 程式人生 > >Linux中python3,django,redis以及mariab的安裝

Linux中python3,django,redis以及mariab的安裝

style aps enc ont .tar.gz gen 我想 per 等級

1. Linux中python3,django,redis以及mariab的安裝

2. CentOS下編譯安裝python3

編譯安裝python3.6的步驟

1.下載python3源碼包

wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz

2.下載python3編譯的依賴包

yum install -y gcc patch libffi-devel python-devel  zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

3.解壓縮源碼包

tar -zxvf Python-3.6.6.tgz

4.進入源碼包文件夾

cd Python-3.6.6

5.編譯且安裝 ?

   1.進入源碼包目錄

  1. ls查看源碼包內容

  2. 釋放編譯文件 Makefile

    ./configure --prefix=/opt/python36   # 指定安裝目錄為/opt/python36

    技術分享圖片

4.編譯

make   # 相當於把源碼包裏面的代碼編譯成linux服務器可以識別的代碼

5.編譯安裝,此步才會最終生成 /opt/python36/

make install

註意: 第4步和第5步可以合並執行, 但是中間需要用&&隔開

make && make install  # 先進行make,執行完成之後,才開始執行make install

技術分享圖片

當看到這個提示,說明已經安裝成功

6.進入/opt目錄查看python36文件夾,我們要的python3都在這裏了

/opt/python36/bin/python3
/opt/python36/bin/pip3
.....
 

6.更改linux的path變量,添加python3

~/.bash_profile  # 這個是用戶環境變量配置文件
/etc/profile  #
系統環境變量配置文件

修改/etc/profile系統環境變量配置文件,添加以下內容

查看環境變量:
echo $PATH
結果:
    /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
 

PATH=/opt/python36/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

? 註意: 一定要將python3的目錄放在第一位

為了永久生效path設置,添加到/etc/profile全局環境變量配置文件中 ? 重載配置文件/etc/profile

source /etc/profile

7.安裝django模塊

pip3 install -i https://pypi.douban.com/simple django==2.0
 

127.0.0.1 本機環回地址
192.168.12.56 本機對外IP地址
0.0.0.0 本機環回地址 127.0.0.1加上192.168.12.56

8.查看當前解釋器的python模塊有哪些

pip3 list

新需求:

我想要在這臺服務器上安裝兩個版本的django, 一個django2.0, 一個django2.1.17,該怎麽做?

  1. 直接安裝django2.1.17

  2. 重新編譯安裝一個python366解釋器,用這個解釋器去跑(這個方法很low)

  3. 使用虛擬環境virtualenv

3. python虛擬環境

什麽是虛擬環境virtualenv

以python3為本體(孫大聖)

再創建多個分身(猴兒們)

分身一(虛擬環境一 qishi2_1)

django2.0

分身二(虛擬環境一 qishi2_2)

django2.1.8

分身三(虛擬環境一 qishi2_3)

flask

使用虛擬環境virtualenv

1.安裝virtualenv pip3 install virtualenv

2.創建目錄 mkdir Myproject cd Myproject 3.創建獨立運行環境-命名

virtualenv --no-site-packages --python=/opt/python36/bin/python3 qishi2_dj20  #得到獨立第三方包的環境,並且指定解釋器是python3
?
virtualenv --no-site-packages --python=/opt/python36/bin/python3 qishi2_dj217 # 再創建一個qishi2_dj217虛擬環境,用來跑django-2.1.7

4.進入虛擬環境 source venv/bin/activate#此時進入虛擬環境(venv)Myproject 5.安裝第三方包 (venv)Myproject: pip3 install django==1.9.8

#  分別在qishi2_dj20和qishi2_dj217兩個虛擬環境安裝django2.0和django2.1.7
pip3 install -i https://pypi.douban.com/simple django==2.0
pip3 install -i https://pypi.douban.com/simple django==2.1.7

#此時pip的包都會安裝到venv環境下,venv是針對Myproject創建的

6.退出venv環境 deactivate命令

7.virtualenv是如何創建“獨立”的Python運行環境的呢?原理很簡單,就是把系統Python復制一份到virtualenv的環境,用命令source venv/bin/activate進入一個virtualenv環境時,virtualenv會修改相關環境變量,讓命令python和pip均指向當前的virtualenv環境

8 分別在兩個虛擬環境下創建兩個django項目

創建django項目
django-admin startproject 項目名稱
1  在qishi2_dj20下創建dj20項目
2 在qishi2_dj217下創建dj217項目

啟動項目
python manage.py runserver 域名:端口號

示例:
python manage.py runserver 0.0.0.0:8000
dj20用8000端口跑起來,dj217用9000端口跑起來

4. 虛擬環境之virtualenvwrapper

原來的virtualenv工具使用特別麻煩,主要體現在以下幾點

1 創建虛擬環境的命令太長,太難記

2 管理特別麻煩

3 進入虛擬環境需要找到這個虛擬環境的存放目錄才行,如果沒有統一的存放目錄,很難找到

virtualenvwrapper的優點

1 創建、管理、刪除虛擬環境非常方便,一條簡短的命令就可以完成

2 進入虛擬環境也很方便, workon

註意: 安裝時一定要安裝在python3解釋器本身下

1 安裝virtualenvwrapper

pip3 install virtualenvwrapper

2 設置Linux的用戶個人配置文件

vim ~/.bash_profile
添加以下幾行內容
WORKON_HOME=~/Envs
VIRTUALENVWRAPPER_VIRTUALENV_ARGS=--no-site-packages
VIRTUALENVWRAPPER_PYTHON=/opt/python36/bin/python3
source /opt/python36/bin/virtualenvwrapper.sh

3 重新讀取此環境變量文件

source ~/.bash_profile

4 退出會話,重新登錄用戶

基本使用virtualenvwrapper

1. 創建一個虛擬環境:
$ mkvirtualenv my_django115
這會在 ~/Envs 中創建 my_django115 文件夾。
?
2. 在虛擬環境上工作:激活虛擬環境my_django115
$ workon my_django115
?
3. 再創建一個新的虛擬環境
$ mkvirtualenv my_django2
?
virtualenvwrapper 提供環境名字的tab補全功能。
當有很多環境, 並且很難記住它們的名字時,這就顯得很有用。
?
4. workon還可以任意停止你當前的環境,可以在多個虛擬環境中來回切換
workon django1.15
workon django2.0
?
5. 也可以手動停止虛擬環境
deactivate
?
6. 刪除虛擬環境,需要先退出虛擬環境
rmvirtualenv my_django115

virtualenvwrapper其他常用命令

1. 列舉所有的虛擬環境。
lsvirtualenv
?
2. 導航到當前激活的虛擬環境的目錄中,比如說這樣您就能夠瀏覽它的 site-packages 。
cdvirtualenv
?
3. 和上面的類似,但是是直接進入到 site-packages 目錄中。
cdsitepackages
?
4. 顯示 site-packages 目錄中的內容。
lssitepackages
?
完整官網介紹:https://virtualenvwrapper.readthedocs.io/en/latest/command_ref.html

5. linux下安裝軟件方法

1 rpm (不推薦使用)

2 yum 安裝(非常方便快捷)

3 編譯安裝(需要自定制的時候才使用)

你公司的技術棧有哪些

#閉源收費的技術棧:
svn + java + apache(web服務器) + oracle + nagios(監控軟件) + redhat
?
#開源技術棧
git + python + java + nginx(web服務軟件) + mysql(mariadb) + zabbix + centos

6. 安裝mariadb(mysql)

1 使用官方源安裝mariadb

vim /etc/yum.repos.d/MariaDB.repo
添加repo倉庫配置內容
[mariadb]
name=MariaDB
baseurl=http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

2 一條命令安裝官方的最新版本mariadb數據庫

yum install MariaDB-server MariaDB-client -y

3 由於官方鏈接可能會很慢,我們上課教學就用阿裏雲的源下載5.x的版本

yum install mariadb-server mariadb -y

4 啟動mariadb數據庫

systemctl start mariadb

5 確保mariadb服務器啟動後,執行命令初始化

mysql_secure_installation

6 進入mysql,創建一個庫和一個表

7 發現不支持中文

\s  # 查看數據庫編碼信息
show create database qishi2_haohaio
show create table zhuanqq

8 停止mariadb服務

systemctl stop mariadb

9 修改配置文件,使mariadb支持中文

vim /etc/my.cnf
添加以下配置文件
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
log-error=/var/log/mysqld.log
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

10 啟動mariadb服務

systemctl stop mariadb

11 再進入mysql, 發現之前已經被創建的中文數據不會被修改,所以,我們要把之前的亂碼中文數據刪除掉,重新再創建

註意: 所以我們在一開始安裝mariadb時,就要將配置文件改為支持中文編碼的狀態

7. 安裝redis

什麽是redis

redis是一個內存型的數據庫,有以下特點:

1 斷電數據丟失

2 服務器停止數據丟失

3 redis服務停止數據丟失

安裝redis步驟

1.下載redis源碼

wget http://download.redis.io/releases/redis-4.0.10.tar.gz
2.解壓縮

tar -zxf redis-4.0.10.tar.gz
3.切換redis源碼目錄

cd redis-4.0.10
4.編譯源文件

5.編譯好後,src/目錄下有編譯好的redis指令 

6.make install 安裝到指定目錄,默認在/usr/local/bin 7 創建一個專門存放redis配置文件目錄   mkdir /opt/redis_conf   vim redis-6379.conf 寫入以下配置 port 6379 daemonize yes pidfile /data/6379/redis.pid loglevel notice logfile "/data/6379/redis.log" protected-mode yes

redis配置文件詳解

技術分享圖片
port 6379                         # 運行在6379的redis數據庫實例
daemonize yes                     # 後臺運行redis  
pidfile /data/6379/redis.pid      # 存放redis pid的文件
loglevel notice                   # 日誌等級
logfile "/data/6379/redis.log"    # 指定redis日誌文件的生成目錄
dir /data/6379                    # 指定redis數據文件夾的目錄
protected-mode yes                # 安全模式
requirepass   haohaio             # 設置redis的密碼
View Code

Linux中python3,django,redis以及mariab的安裝