搭建开发环境
1、 安装 VMWarePro 15
链接: https://pan.baidu.com/s/1XHoE9zQRUByrUEBZnBL1RA
提取码: ntgh
安装过程很简单,一直下一步,直到结束。安装完步之后要重新启动系统
创建新的空白虚拟机,选择稍后安装系统,选择合适的cpu核心数和内存大小,网络配置:桥接模式
2、 安装 Ubuntu20.04 操作系统
下载系统: https://ubuntu.com/download/desktop
选择系统版本: Ubuntu 20.04.3 LTS
下载下来之后,系统镜像: ubuntu-20.04.3-desktop-amd64.iso
将iso镜像文件挂载到虚拟机的光驱上,启动安装程序
安装的时候 系统语言 选择全英文,将第三方软件也安装上,安装过程选择在线下载更新包
完成ubuntu操作系统的安装
3、安装vim编辑器、git工具和net-tools网络工具
sudo apt-get update
sudo apt-get upgrade 多执行几次更新命令
sudo apt-get install vim
sudo apt-get install git
sudo apt-get install net-tools // 使用ifconfig查看IP地址
4、虚拟机和宿主机之间的内容传递
4.1 剪贴板内容和小文件的传递
让虚拟机和宿主机之间可以复制粘贴数据文件
sudo apt autoremove open-vm-tools
sudo apt install open-vm-tools-desktop
4.2 大文件的传递
在ubuntu上安装 ssh-server 服务
查看SSH服务有没有安装: sudo ps -e |grep ssh
安装SSH : sudo apt-get install openssh-server
启动ssh命令: service sshd start
停止ssh命令: service sshd stop
在windows上安装FTP软件:MobaXTerm 和 FileZilla
5、 Ubuntu20.04安装搜狗输入法
deb软件包的下载地址: https://pinyin.sougou.com
安装方法查看搜狗官方帮助文档法
6、安装Python虚拟环境管理器 miniconda
下载地址: https://conda.io/en/latest/miniconda.html
conda的常用命令总体上分以下三类:
6.1 管理虚拟环境的命令
a、 conda info // 查看conda的基本配置信息
b、 conda create -n py310env python==3.10.0 // 创建指定python版本的虚拟环境
c、 conda info --envs // 显示所有的虚拟环境
d、 conda activate xxxx // 开启xxxx虚拟环境
e、 conda deactivate // 关闭当前正在使用的虚拟环境
f、 conda config --set auto_activate_base false/true // 关闭或者开启自动激活状态
g、 conda remove -n xxxx --all // 删除xxxx虚拟环境
6.2 管理镜像源的命令
a、 conda config --show channels // 显示目前conda的数据源有哪些
// 添加数据源:例如, 添加清华anaconda镜像 (https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/)
b、 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
c、 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
d、 conda config --set show_channel_urls yes
e、 conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ // 删除数据源
f、 conda clean -i // 清除索引缓存,保证用的是镜像站提供的索引
6.3 python包的管理命令
a、 conda list // 列出当前虚拟环境中安装的package
b、 conda install xxx=3.2.8 // 安装指定版本的 xxx 包
c、 conda uninstall xxx // 卸载指定的 xxx 包
d、 conda search xxx // 搜索指定的xxx包
f、 conda list -e > requirements.txt // conda批量导出包含环境中所有组件的requirements.txt文件
g、 conda install --yes --file requirements.txt // conda批量安装requirements.txt文件中包含的组件依赖
7、 pip包管理工具的常用命令
7.1 管理镜像源的命令
// 升级pip
pip install pip -U
// 显示目前pip的数据源有哪些
pip config list
pip config list --[user|global] # 列出用户|全局的设置
pip config get global.index-url # 得到这key对应的value 如:https://mirrors.aliyun.com/pypi/simple/
// 常见的国内镜像源
阿里云 http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
豆瓣(douban) http://pypi.douban.com/simple/
清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
// 使用上述镜像源的方法如下:
// 例如,临时使用清华镜像源 (注意,simple 不能少, 是 https 而不是 http)
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xxx-package
// 设置默认的系统级全局镜像源
// 例如,使用pip命令全局配置阿里云镜像源
pip config --global set global.index-url https://mirrors.aliyun.com/pypi/simple/
pip config --global set install.trusted-host mirrors.aliyun.com
// 设置当前用户目录下的镜像源
在 当前用户家目录创建 .pip/pip.ini 文件,在这文件里面写上下面的内容
[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host = mirrors.aliyun.com
// 删除
pip config unset key
// 例如
pip config unset global.index-url
pip config unset global.trusted-host
// 搜索某个安装包
pip search flask # 搜素flask安装包
7.2 管理python包的命令
pip list #列出当前缓存的包
pip purge #清除缓存
pip remove #删除对应的缓存
pip help #帮助
pip install xxx #安装xxx包
pip uninstall xxx #删除xxx包
pip show xxx #展示指定的已安装的xxx包
pip check xxx #检查xxx包的依赖是否合适
pip freeze > requirements.txt # pip批量导出包含环境中所有组件的requirements.txt文件
pip install -r requirements.txt # pip批量安装requirements.txt文件中包含的组件依赖
8、 Ubuntu20.04安装安装 配置 PyCharm
https://cloud.tencent.com/developer/article/1738470
9、 Ubuntu20.04 安装 配置MySQL 8.0.x
9.1 安装MySQL,启动服务
a、 查看系统有没有已经安装 MySQL
ps -ef | grep mysqld //查看MySQL的服务进程
mysql //直接使用MySQL命令
b、 安装MySQL
sudo apt update
sudo apt install mysql-server mysql-client //服务端和客户端都会安装
c、安装完成后 MySQL 服务会自动启动,可查看MySQL的服务进程以及查看3306端口监听状态
ps -ef | grep mysqld
netstat -alnt | grep 3306
sudo service mysql start // 如果没有运行可以start
sudo service mysql status // 检查MySQL是不是在运行
9.2 修改mysql的root用户的密码
第一步: 找到 debian-sys-maint 用户和密码
sudo cat /etc/mysql/debian.cnf
第二步:用此用户名和密码登陆,进入MySQL的客户端
mysql -udebian-sys-maint -pScxVwdc5Edjcw836
第三步:查看MySQL自带的数据库(以下是SQL语句)
mysql> show databases; // 查看刚安装好MySQL后自带的所有数据库
第三步:选择 mysql 数据库
mysql> use mysql; // 因为 mysql 数据库中存储了用户信息的 user 表
第四步:在 user 表中查看当前 root 用户的相关信息
mysql> select host, user, authentication_string, plugin from user;
// 执行完上面的命令后会显示一个表格,
// 查看表格中 root 用户的 host,默认应该显示的localhost,只支持本地访问,不允许远程访问。
第五步:修改root用户的密码:
mysql> flush privileges;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
mysql> flush privileges;
mysql> \q; // 当前用户 debian-sys-maint 退出登录
第六步:换做root用户登录, 进入MySQL的客户端
mysql -uroot -p你的密码 (回车)
第七步: 查看 mysql数据库中的user表
mysql> use mysql;
mysql> select host, user, authentication_string, plugin from user;
// 到此为止,root用户的密码就修改成功
9.3 用root用户名登录MySQL, 创建新的用户,授权远程访问
mysql> use mysql; // 使用mysql数据库
//首先创建一个用户, 名为darker, 登录密码为darker-rabit, 百分号(%)表示通配所有host,可以让该用户远程访问数据库
mysql> create user 'darker'@'%' identified by 'darker-rabit';
mysql> flush privileges;
//接着查看mysql数据库中的user表,是否已经包含darker用户
mysql> select host, user, plugin from user;
//接着为 darker 用户授权,可以使用MySQL服务器上的任意数据库,执行任意操作
mysql> grant all privileges on *.* to 'darker'@'%' with grant option;
mysql> \q; 退出客户端
!!! 仅仅创建一个这样的用户('darker'@'%'),还无法进行远程链接MySQL服务
9.4 修改MySQL的配置文件,使得任意IP地址都可以连接MySQL服务
// 查看3306端口监听的IP地址
netstat -alnt | grep 3306
// 找到 /etc/mysql/... 下面的 mysqld.cnf, 不要修改 my.cnf
// 把 bind-address = 127.0.0.1 改为 bind-address = 0.0.0.0
// 用vim或gedit修改
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
// 然后重启mysql,
sudo service mysql restart
// 查看3306端口的变化
netstat -alnt | grep 3306
9.5 MySQL加密方式的修改
MySQL8.0版本公布了新的密码加密认证插件caching_sha2_password,而先前版本的默认插件是mysql_native_password。根据官方描述,caching_sha2_password和sha256_password(caching_sha2_password和sha256_password类似)的加密性能强于mysql_native_password,比后者拥有更安全的密码散列,因此8.0版本之后将caching_sha2_password作为MySQL的首选认证插件。
caching_sha2_password取代mysql_native_password成为MySQL8.0以上版本的默认密码认证方式
本次更新同时影响到了服务器和libmysqlclient客户端库。我们应该意识到,虽然MySQL进行了修改,但是有些第三方客户端比如NavCat可能并不支持该类修改。
指定不同的密码策略,创建新用户
create user 'dogger'@'%' identified with mysql_native_password by 'qaz@wsx.123';
create user 'kitti'@'%' identified with caching_sha2_password by 'qaz@wsx.123';
恢复到以前的密码认证策略,在 配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf 中的[mysqld]下面加入的配置项:
default_authentication_plugin=mysql_native_password
!!! 修改完成,一定要重启MySQL服务器,才能生效
修改了密码策略以后,这样创建新用户如果不指定密码策略,则会使用上面设定的默认的密码策略(认证插件)
MySQL8如何把已有用户的加密策略 caching_sha2_password 修改成 mysql_native_password?
使用下面的SQL语句:
ALTER USER 'kitti'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
10、DataGrip 远程连接 Ubuntu上的MySQL
首先在windows上安装 DataGrip
DataGrip的简单使用
注意几个常见的连接不成功的错误
Ubuntu20.04开放指定端口
https://blog.csdn.net/lianghecai52171314/article/details/113813826