Skip to content
This repository has been archived by the owner on Feb 23, 2023. It is now read-only.

lazwa34/BigDataEnv

Repository files navigation

大数据环境搭建部分

注意:

  • 环境搭建所需要的安装包需要提前使用 xftp上传,本文档默认放在虚拟机的/root目录下
  • 环境搭建所需安装包 下载链接, 提取码:data
  • 请学会使用 Tab 键进行补全文件路径

1、虚拟机安装

这里我们默认使用的是 VMware 16VMware 15也可以,CentosOS版本选择的是 CentOS 7

具体安装请看👉 虚拟机安装CentOS 7

2、克隆虚拟机、连接 Xshell

这里我们约定三台虚拟机名称默认为 masterslave1slave2 (比赛中会有不同的要求)

具体安装请看👉 虚拟机克隆、连接Xshell

3、关闭防火墙(三台虚拟机都要操作)

请根基你的系统版本选择对应的命令

  • Centos 7 命令 (两条命令分别执行)

    systemctl stop firewalld.service
    systemctl disable firewalld.service
  • Centos 6 命令 (两条命令分别执行)

    service iptables stop
    chkconfig iptables off

4、修改 hosts,改完拷贝到另外两台机器

命令:

vim /etc/hosts

添加以下内容:

请注意注意以下几点:

  • 主机名中一定一定一定不能有下划线、连接符!!!

  • 请不要复制以下内容直接用,需要将master_ip改成对应主机的 IP 地址(具体请看最后的示例)

  • 比赛时根据官方要求统一使用 azy01slave1, azy01sla 类的名字

master_ip	master
slave1_ip	slave1
slave2_ip	slave2

示例:

image-20201125235322838

拷贝 hosts 到另外两台虚拟机

命令(请逐条在命令行中运行):

scp /etc/hosts slave1:/etc/hosts
scp /etc/hosts slave2:/etc/hosts

5、配置免密登录(在 master 上)

生成 SSH 公钥(需要按多次回车,直到出现一个“框”)

ssh-keygen -t rsa

配置三台主机的免密登录(请逐条在命令行中运行,后面的主机名称根据大家在 hosts 里的配置填写)

ssh-copy-id -i master
ssh-copy-id -i slave2
ssh-copy-id -i slave1

6、安装 JDK

  1. 解压 jdk 安装包

    tar -zxvf jdk-8u192-linux-x64.tar.gz
  2. 将解压出来的文件夹 jdk1.8.0_192 移动到 /opt 目录下,并修改文件夹名称为 jdk

    可以先使用 ls 命令查看解压出来的文件夹名称,可能与文档有差异,请按自己解压出来的文件夹名称操作

    mv jdk1.8.0_192 /opt/jdk
  3. 配置 jdk 环境变量

    命令:

    vim /etc/profile

    在注释的最后一行添加以下内容 (如下图)

    export JAVA_HOME=/opt/jdk
    export PATH=$JAVA_HOME/bin:$PATH

    image-20201125235224054

  4. 显示当前环境变量(可选,作用为备份 PATH,防止 PATH 变量受损,无法恢复)

    echo $PATH

    此时会输出一个类似以下的内容

    /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

    如果环境变量配置错了,可以通过这个进行恢复

    恢复命令:

    export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
  5. 使环境变量生效

    命令:

    source /etc/profile

    sourcelscd等指令没有了,可以通过上一步进行恢复,然后重新修改 profile文件

  6. 复制环境变量到另外两台机器上((请逐条在命令行中运行)

    scp /etc/profile slave1:/etc
    scp /etc/profile slave2:/etc
  7. 复制 jdk 到另外两台机器上((请逐条在命令行中运行)

    scp -r /opt/jdk slave1:/opt
    scp -r /opt/jdk slave2:/opt

7、安装 hadoop

  1. 解压 hadoop 安装包

    tar -zxvf hadoop-2.7.6.tar.gz
  2. 将解压出来的文件夹 hadoop-2.7.6. 移动到 /opt 目录下,并修改文件夹名称为 hadoop

    mv hadoop-2.7.6 /opt/hadoop
  3. 配置hadoop环境变量

    命令:vim /etc/profile (在刚刚配置的 jdk 环境变量后添加即可)

    export HADOOP_HOME=/opt/hadoop
    export PATH=$HADOOP_HOME/bin:$PATH

    使环境变量生效

    source /etc/profile
  4. 复制环境变量到另外两台机器上((请逐条在命令行中运行)

    scp /etc/profile slave1:/etc
    scp /etc/profile slave2:/etc
  5. 修改 hadoop 的配置文件

    1. 进入 hadoop 配置文件的文件夹

      cd /opt/hadoop/etc/hadoop
    2. 修改 slaves

      命令:

      vim slaves

      先删除里面的 localhost,然后添加以下内容

      slave1
      slave2
      
    3. 修改 hadoop-env.sh

      命令:

      vim hadoop-env.sh

      JAVA_HOME 修改成

      export JAVA_HOME=/opt/jdk

      image-20201126000041086

    4. 修改 core-site.xml

      命令:

      vim core-site.xml

      添加以下内容:(一定要在 <configuration> </configuration> 之间添加)

      <property>
          <name>fs.defaultFS</name>
          <value>hdfs://master:9000</value>
      </property>
      
      <property>
          <name>hadoop.tmp.dir</name>
          <value>/opt/hadoop/tmp</value>
      </property>

      image-20201126000325569

    5. 修改 hdfs-site.xml

      命令:

      vim hdfs-site.xml

      添加以下内容:(一定要在 <configuration> </configuration> 之间添加)

      <property>
          <name>dfs.replication</name>
          <value>1</value>
      </property>
    6. 修改 mapred-site.xml

      • mapred-site.xml.template复制出 mapred-site.xml

        命令:

        cp mapred-site.xml.template mapred-site.xml
      • vim 编辑

        命令:

        vim mapred-site.xml
        

        添加以下内容:(一定要在 <configuration> </configuration> 之间添加)

        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>
    7. 修改 yarn-site.xml

      命令:

      vim yarn-site.xml

      添加以下内容:(一定要在 <configuration> </configuration> 之间添加)

      <property>
          <name>yarn.resourcemanager.hostname</name>
          <value>master</value>
      </property>
      
      <property>
          <name>yarn.nodemanager.aux-services</name>
          <value>mapreduce_shuffle</value>
      </property>
  6. hadoop 拷到其他机器上(请逐条在命令行中运行)

    scp -r /opt/hadoop slave1:/opt/
    scp -r /opt/hadoop slave2:/opt/
  7. 在 master 上初始化 hadoop 集群

    hadoop namenode -format
  8. 启动节点

    • 进入 hadoopsbin 文件夹

      cd /opt/hadoop/sbin
    • 启动 hadoop

      ./start-all.sh
  9. 使用 jps 命令查看进程启动情况

    jps

    master 显示

    Namenode
    Resourcemanager
    SecondaryNameNode
    Jps

    slave1slave2显示:

    Datanode
    Nodemanager
    Jps

    则安装成功,否则安装失败,请检查上述步骤或者配置文件是否出错

  10. hadoop 配置的疑难解答

    • namenode 没有启动成功:

      查看namenode的日志。根据实际情况随机应变。

      大部分情况尝试删除 hadooptmp 目录,解决namenode 启动故障。

    • 从节点的 NodeManager 没有启动

      尝试将 hadoop 的配置文件拷出,重新解压安装 hadoop 重新初始化。

    注意 hadoop 拷贝到其他从节点在初始化 namenode 之前。

  11. 安装成功后可以打开浏览器,输入网址 masterIP + :50070(注意是英文的 :)

    example

    192.168.100.144:50070
    

    image-20201126122310172

8、安装 MySQL

  1. 因为 CentOS 7 默认安装了 mariadb-libs 会导致安装不上 MySQL 所以先卸载冲突源

    rpm -e --nodeps mariadb-libs
  2. 使用 rpm 包安装(先安装 MySQL-client 再安装 MySQL-server,一条条执行)

    rpm -ivh MySQL-client-5.1.73-1.glibc23.x86_64.rpm
    rpm -ivh MySQL-server-5.1.73-1.glibc23.x86_64.rpm
  3. 启动 mysql 服务(安装好 server 后一般会自启动,不需要手动启动,可以省略)

    service mysql start
  4. 加入到开机启动项

    chkconfig mysql on
  5. 初始化配置 mysql 服务

    mysql_secure_installation
    • Enter current password for root (enter for none): :直接按回车

    • Set root password? [Y/n]:输入 Y

    • New password:: 输入 123456

    • Re-enter new password::再输入 123456

    • 后面全部回车即可

  6. 登录 MySQL(密码是:123456)

    mysql -uroot -p
  7. 设置用户权限(请逐条在 SQL 命令行中运行)

    use mysql;
    update user set host='%' where user = 'root';
    -- 注意上面一行执行完之后必定会报错,如 ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
    -- 直接无视执行下一句
    flush privileges;
  8. hive

    create database hive default charset utf8;
  9. 检查表是否创建成功

    show databases;
  10. 退出 MySQL

    exit;
  11. MySQL 配置的疑难解答

  • 检查 service mysql status,如果在非启动状态有锁住,直接删去锁文件(status 上会指定路径)。

  • mysql 可能会出现启动不完全的情况。ps -aux | ps -ef 检查所有 mysql 服务的进程号,kill -9 杀死 mysql 的所有进程重新启动。

9、安装 hive

  1. 解压 hive 安装包

    tar -zxvf apache-hive-2.2.0-bin.tar.gz
  2. 将解压出来的文件夹 hadoop-2.7.6. 移动到 /opt 目录下,并修改文件夹名称为 hive

    mv apache-hive-2.2.0-bin /opt/hive
  3. 配置 hive 的环境变量

    命令:

    vim /etc/profile

    hadoop 环境变量后添加以下内容

    export HIVE_HOME=/opt/hive
    export PATH=$HIVE_HOME/bin:$PATH

    使环境变量生效

    source /etc/profile
  4. 修改 hive 的配置文件

    1. 进入 hive 配置文件目录

      cd /opt/hive/conf
    2. 修改 hive-env.sh

      • 从模板中拷贝hive-env.sh

        cp hive-env.sh.template hive-env.sh
      • 编辑 hive-env.sh

        vim hive-env.sh

        添加以下内容

        HADOOP_HOME=/opt/hadoop
        JAVA_HOME=/opt/jdk
        HIVE_HOME=/opt/hive

        image-20201126115511637

    3. 修改 hive-site.xml

      • 从模板中拷贝hive-site.xml(注意文件名称不同)

        cp hive-default.xml.template hive-site.xml
      • 配置 vim (可选)

        为了方便查找需要修改的内容可以进行一些 vim 的配置

        命令:

        vim ~/.vimrc

        添加以下内容

        set ignorecase " 自动跳到第一个匹配的结果
        set incsearch  " 搜索时忽略大小写
      • 修改 hive-site.xml 内容

        命令:

        vim hive-site.xml

        / 搜索 以下 <name></name> 内的内容,修改对应 <value></value> 内的内容

        修改一条后按 Esc 退出编辑模式进行下一次搜索!!!

        <property>
           <name>javax.jdo.option.ConnectionURL</name> 
           <value>jdbc:mysql://master:3306/hive?useSSL=false</value> 
        </property>
        
        <property> 
           <name>javax.jdo.option.ConnectionDriverName </name> 
           <value>com.mysql.jdbc.Driver</value> 
        </property> 
        
        <property>
           <name>javax.jdo.option.ConnectionUserName</name>
           <value>root</value>
        </property> 
        
        <property> 
           <name>javax.jdo.option.ConnectionPassword </name> 
           <value>123456</value> 
        </property>
        
        <property>
           <name>hive.querylog.location</name>
        <value>/opt/hive/tmp</value>
        </property>
        
        <property>
           <name>hive.exec.local.scratchdir</name>
        <value>/opt/hive/tmp</value>
        </property>
        
        <property>
            <name>hive.downloaded.resources.dir</name>
            <value>/opt/hive/tmp</value>
        </property>

        example:

        image-20201126120542284

  5. MySQL 驱动 jar 包拷贝到 hive (这里使用的是 5.1.17 版本)

    cp /root/mysql-connector-java-5.1.17.jar /opt/hive/lib/
  6. 替换掉 hadoopjline 的版本,使用 hive2.12 版本

    cp /opt/hive/lib/jline-2.12.jar /opt/hadoop/share/hadoop/yarn/lib/

    注意: 如果安装的是 hadoop2.6 版本,则需要先删除自带的 0.9.94 版本的 jline

    rm -rf /opt/hadoop/share/hadoop/yarn/lib/jline-0.9.94.jar
  7. 拷贝配置文件到另外两台虚拟机

    scp -r /opt/hive slave1:/opt
    scp -r /opt/hive slave2:/opt
  8. master 上初始化元数据

    schematool -dbType mysql -initSchema
  9. 启动 hive

    hive
    

    若出现以下内容 hive 启动成功,否则安装失败,请检查以上步骤是否出错

    hive>
    
  10. hive 的基本操作

    查看数据库

    show databases;

    显示使用的数据库名称

    set hive.cli.print.current.db=true;

    退出

    exit;
  11. hadoop 退出 safe mode(可以不做这一步)

    hadoop dfsadmin -safemode leave
  12. hdfs-site.xml 的一些配置详情(了解)

    truedfs.permissions					设置dfs权限打开
    dfs.replication						设置HDFS数据块的备份数
    dfs.client.block.write.retries		设置数据块写入的最多重试次数
    dfs.max.objects						设置dfs最大并发对象数
    dfs.datanode.handler.count			设置DateNode启动的服务线程数
  13. hdfs dfs 的一些指令(实跟 bash 的指令差不多,掌握)

    hdfs dfs -ls							(显示 hdfs 指定路径下的文件)
    hdfs dfs -mkdir [-p]					(在 hdfs 上创建文件夹)
    hdfs dfs -touchz  						(在 hdfs 上创建文件,与 bash 的 touch 相同)
    hdfs dfs -rm -r							(删除 hdfs 上的文件)
    hdfs dfs -appendToFile File1 File2   	(追加 File1 到 File2 尾部)
    hdfs dfs -chmod 644 File1				(修改 hdfs 上指定文件或文件夹的权限)
    hdfs dfs -cat							(显示 hdfs 上指定文件的内容)
    hdfs dfs -put							(上传文件到 hdfs 上)
    
    # 上传命令:hdfs dfs -put 本地文件路径 hdfs路径
    hdfs dfs -put /usr/local/testdata/anhui.txt /data/
    
    # 下载命令:上传命令:hdfs dfs -get  hdfs路径 本地文件路径
    hdfs dfs -get /data/anhui.txt /usr/local/
  14. hdfs 一些问题解决

    • 第一步检查虚拟机防火墙是否关闭

      HDFS 传输问题优先考虑防火墙的问题,优先先尝试关闭防火墙(但实际比赛环境好像没有防火墙)

    • 报错 appendToFile: Failed to APPEND_FILE /data/file/data1.csv for DFSClient_NONMAPREDUCE_-1657827142_1 on 192.168.1.100 because lease recovery is in progress. Try again later.

      hdfs-site.xml 中追加 name: dfs.client.block.write.replace-datanode-on-failure.policy value=NEVER

10、安装 zookeeper (了解,不需要安装)

  1. 解压、移动到 /opt

    hadoop

  2. 配置环境变量(配置好记得 source /etc/profile)

    ZOOKEEPER_HOME=/opt/zookeeper
    export PATH=$ZOOKEEPER_HOME/bin:$PATH
  3. 修改配置文件(配置文件在 /opt/zookeeper/conf/ 目录下)

    • zoo.cfg(从 zoo_sample.cfg 复制)

      dataDir=/opt/zookeeper/data
      server.0=master:2888:3888
      server.1=slave1:2888:3888
      server.2=slave2:2888:3888
      
  4. 同步到其它节点

    scp -r /opt/zookeeper slave1:/opt
    scp -r /opt/zookeeper slave2:/opt
  5. 创建 /opt/zookeepe/data 目录(三机器都需要配置)

    mkdir /opt/zookeeper/data
    

    分别在每台虚拟机下操作:

    1. data 目录下创建 myid 文件

    2. 三台虚拟机分别在 myid 文件内填入 0, 1, 2 (根据 zoo.cfg 中一一对应)

      master 填入 0
      slave1 填入 1
      slave2 填入 2
  6. 启动 zookeeper (三台虚拟机都要操作)

    zkServer.sh start
  7. zookeeper 一些其他的指令

    查看状态

    zkServer.sh status

    当有一个 leader 的时候启动成功,连接 zookeeper

    zkCli.sh

    zk shel 操作

    ls /                  查找根目录
    create /test abc      创建节点并赋值
    get /test             获取指定节点的值
    set /test cb          设置已存在节点的值
    rmr /test             递归删除节点
    delete /test/test01   删除不存在子节点的节点

11、安装 hbase

  1. 解压、移动到 /opt

    hadoop

  2. 配置环境变量 (配置好记得 source /etc/profile)

    export HBASE_HOME=/opt/hbase
    export PATH=$HBASE_HOME/bin:$PATH
  3. 修改配置文件(配置文件在 /opt/hbase/conf/ 目录下)

    1. 修改 hbase-env.sh

      添加以下内容

      export JAVA_HOME=/opt/jdk
      export HBASE_MANAGES_ZK=true

      image-20201126130809697

      将以下内容注释掉(在每行开头加一个 # 即可,如图)

      export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"
      export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"

      image-20201207155057412

    2. 修改 hbase-site.xml (在 <configuration></configuration> 之间加入以下内容)

      <property> 
      	<name>hbase.rootdir</name>
          <value>hdfs://master:9000/hbase</value>
      </property>
      
      <property> 
          <name>hbase.cluster.distributed</name>
          <value>true</value> 
      </property> 
      
      <property> 
       <name>hbase.zookeeper.quorum</name>
          <value>master,slave1,slave2</value>
      </property>
      
      <property>
         <name>hbase.zookeeper.property.dataDir</name> 
         <value>/opt/hbase/zookeeper</value>
      </property>
  4. 修改 regionservers 删除 localhost 添加以下内容

    slave1
    slave2
  5. 拷贝配置文件到所有机器上

    scp -r /opt/hbase slave1:/opt
    scp -r /opt/hbase slave2:/opt
  6. 关闭 hadoop 安全模式

    hadoop dfsadmin -safemode leave
  7. 启动 hbase

    start-hbase.sh
  8. 进入 hbase sell

    hbase shell

    masterslave1slave2 中的任意一台机器进入 hbase 自带的shell环境,然后使用命令 version 等,进行查看 hbase 信息及建立表等操作

  9. jps 查看进程

    master

    HMaster
    HQuorumPeer
    

    slave

    HRegionServer
    HQuorumPeer
    

12、安装 Spark

  1. 解压、移动到 /opt

    hadoop

  2. 配置环境变量 (配置好记得 source /etc/profile)

    export SPARK_HOME=/opt/spark
    export PATH=$SPARK_HOME/bin:$PATH
  3. 修改配置文件(配置文件在 /opt/spark/conf/ 目录下)

  4. spark-env.sh(从 spark-env.sh.template 复制,添加以下内容)

    注意:SPARK_WORKER_CORESSPARK_WORKER_MEMORY 请根据虚拟机情况设置

    export SPARK_MASTER_IP=master
    export SPARK_MASTER_PORT=7077
    export SPARK_WORKER_CORES=1
    export SPARK_WORKER_INSTANCES=1
    export SPARK_WORKER_MEMORY=1g
    export HADOOP_CONF_DIR=/opt/hadoop/etc/hadoop
    export JAVA_HOME=/opt/jdk
  5. slaves(从 slaves.template 复制,添加以下内容,不用删除 localhost)

    slave1
    slave2
    
  6. 拷贝配置文件到所有机器上

    scp -r /opt/spark slave1:/opt
    scp -r /opt/spark slave2:/opt
  7. 启动 Spark

    cd /opt/spark/sbin
    ./start-all.sh
  8. jps查看进程

    master

    Master
    Worker
    

    slave

    Worker
    
  9. 访问 Spark UI

    hadoopip 地址为 masterip 地址

    http://192.168.100.144:8080
    

    image-20201126133128252

  10. 往 yarn 提交任务需要增加两个配置(/opt/hadoop/etc/hadoop/yarn-site.xml)

    <property>
      <name>yarn.nodemanager.pmem-check-enabled</name>
      <value>false</value>
    </property>
    
    <property>
      <name>yarn.nodemanager.vmem-check-enabled</name>
      <value>false</value>
    </property>

    同步到其他节点

    scp -r /opt/hadoop/etc/hadoop/yarn-site.xml slave1:/opt/hadoop/etc/hadoop/
    scp -r /opt/hadoop/etc/hadoop/yarn-site.xml slave2:/opt/hadoop/etc/hadoop/

    重启 yarn

    /opt/hadoop/sbin/stop-yarn.sh
    /opt/hadoop/sbin/start-yarn.sh

13、安装 Python

注意: 以下 Python 3 的安装依赖于 tensorflow_torch.tgz 内的文件,请回到最上方点击链接进行下载

  1. 安装编译所需的环境

    逐条在命令行执行

    tar -zxvf tensorflow_torch.tgz
    cd tensorflow_torch/rpm
    rpm -ivh --nodeps --force *.rpm
  2. 编译 Python ,安装

    解压

    tar -zxvf Python-3.6.3.tgz

    进入 Python-3.6.3 文件夹

    cd Python-3.6.3

    编译安装(逐条在命令行执行)

    ./configure --prefix=/opt/python36
    make
    make install
  3. 创建软链接

    ln -s /opt/python36/bin/python3 /usr/bin/python3
    ln -s /opt/python36/bin/pip3 /usr/bin/pip3
    
  4. 升级 pip

    cd /root/tensorflow_torch
    pip3 install pip-20.2.3-py2.py3-none-any.whl
  5. 安装 Tensorflow(逐条执行最后两行)

    # numpy-1.17.2-cp36-cp36m-manylinux1_x86_64.whl
    # protobuf-3.9.2-cp36-cp36m-manylinux1_x86_64.whl
    # requirements.txt
    # six-1.12.0-py2.py3-none-any.whl
    # tensorflow-1.1.0rc1-cp36-cp36m-manylinux1_x86_64.whl
    # Werkzeug-0.16.0-py2.py3-none-any.whl
    # wheel-0.33.6-py2.py3-none-any.whl
    cd /root/tensorflow_torch/tensorflow
    pip3 install *.whl

    Tensorflow 测试代码(Python3 环境下运行)

    import tensorflow as tf
    sess = tf.Session()
    hello = tf.constant('Hello,world!')
    print(sess.run(hello))
  6. 安装 PyTorch

    cd /root/tensorflow_torch/pytorch
    # 安装 future(要需要先安装,不然后面会报错)
    tar zxvf future-0.18.2.tar.gz
    cd future-0.18.2
    python3 setup.py install
    
    # 安装其他
    # Pillow-7.2.0-cp36-cp36m-manylinux1_x86_64.whl
    # torch-1.6.0+cpu-cp36-cp36m-linux_x86_64.whl
    # torchvision-0.7.0+cpu-cp36-cp36m-linux_x86_64.whl
    cd ..
    pip3 install *.whl

    PyTorch 测试代码

    import torch
    print(torch.__version__)
    print(torch.tensor([1, 2]))
  7. 排错 (没有错误不需要排错)

    • python3.6: error while loading shared libraries: libpython3.6m.so.1.0:cannot open shared object file: No such file or directory

      使用命令 ldd /usr/local/Python-3.6/bin/python3 检查其动态链接

      拷贝文件到 lib

      cd /root/Python-3.6.5
      cp libpython3.6m.so.1.0 /usr/local/lib64/
      cp libpython3.6m.so.1.0 /usr/lib/
      cp libpython3.6m.so.1.0 /usr/lib64/
  8. 有网络情况下的安装(执行完第二条命令后,请看第 9 步)

    yum install python3
    pip3 install --upgrade pip
    pip3 install tensorflow
    pip3 install torch
  9. 修改 pip 源

    pip 默认源下载很慢所以建议修改成国内镜像源(以下方法任选其一)

    1. 手动修改

      • ~/目录下新建 .pip文件夹:

        mkdir ~/.pip
      • ~/.pip文件夹下新建 pip.conf写入以下内容:vim ~/.pip/pip.conf

        [global]
        index-url = http://pypi.douban.com/simple/
        [install]
        trusted-host = pypi.douban.com
        
    2. 使用 pqi 修改

      pip3 install pqi
      pqi ls
      pqi use <name> # <name> 为以上显示源的名称,建议使用 ustc 或 douban

      image-20201126134417164

      image-20201126134440165

      image-20201126134458391

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages