ubuntu使用过程中遇到的指令

python

1.显示使用的哪个python

which python3
$ /usr/bin/python3
# 显示具体信息
ls /usr/bin/python3 -l
$ lrwxrwxrwx 1 root root 10  7月  5 17:27 /usr/bin/python3 -> python3.11  # 可以看到软连接指向python3.11

2.查看电脑中所有的python

cd /usr/bin
ls -l | grep python

# 结果如下
python2
python2.7
python3
python3.11
python3.11-config
python3.6
python3.6m
python3-config
python3-futurize
python3-pasteurize
x86_64-linux-gnu-python3.11-config
x86_64-linux-gnu-python3-config

3.更换默认python

# 删除默认python软连接
sudo rm /usr/bin/python
# 创建新的软连接指向新的python
sudo ln -s /usr/bin/python3.5 /usr/bin/python

4. 显示pip/pip3与python的对应关系

which pip3
$ /usr/local/bin/pip3
# 显示pip3信息
cd /usr/local/bin
cat pip3

结果如下:

#!/usr/bin/python3
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal.cli.main import main
if __name__ == "__main__":
    sys.argv[0] = re.sub(r"(-script\.pyw|\.exe)?$", "", sys.argv[0])
    sys.exit(main())

修改第一行的 /usr/bin/python3到自己需要的python版本

5. 问题提示 externally-managed-environment

原因:Manjaro 22、Ubuntu 23.04、Fedora 38 以及其他的最新发行版中,为了避免「操作系统包管理器 (如pacman、yum、apt) 和 pip 等特定于 Python 的包管理工具之间的冲突。

# 将3.X中的 X 换为电脑中的python版本
sudo mv /usr/lib/python3.x/EXTERNALLY-MANAGED /usr/lib/python3.x/EXTERNALLY-MANAGED.bk

6. 虚拟环境创建

创建:python3 -m venv envname
激活:source bin/activate

问题1:mysqlclient安装报错

解决方案:

1.先安装 客户端程序:
sudo apt install -y mysql-client

2.基于python安装mysqlclient需要依次安装以下库:
sudo apt-get install libmysqlclient-dev
sudo apt install libssl-dev
sudo apt install libcrypto++-dev

3.使用pip安装mysqlclient
pip install mysqlclient==1.4.6

mysql安装

安装:https://www.cnblogs.com/lfri/p/10437694.html
登陆:https://blog.csdn.net/fr555wlj/article/details/54971412

允许windows远程访问ubuntu

参考:https://www.cnblogs.com/xuliangxing/p/7642650.html
sudo apt-get install xrdp vnc4server xbase-clients

新的方法
1、通过dconf-editor 修改 remote-access,方法同楼上链接;
2、在Ubuntu端安装 VNC-Server-6.7.4-Linux-x64
3、输入 Lisence: VKUPN-MTHHC-UDHGS-UWD76-6N36A

通过ssh实现远程 ubuntu的运行结果可视化

https://www.jianshu.com/p/9279b2ed8821

安装git

参考:https://www.cnblogs.com/lxm20145215----/p/5905765.html

数据库迁移

1、mysqldump 备份与导入数据库 基本

参考:https://www.cnblogs.com/linuxk/p/9371475.html

备份一个:mysqldump -uroot -ppassword -B name1 > backfile.sql
备份多个:mysqldump -uroot -ppassword -B -databases name1 name2 > backupfile.sql
备份所有:mysqldump -B -all-databases > backupfile.sql
导入:    mysql -uroot -ppassword < backupfile.sql

说明:加了-B参数后,备份文件中多的Create database和use mytest的命令
加-B参数的好处:
加上-B参数后,导出的数据文件中已存在创建库和使用库的语句,不需要手动在原库是创建库的操作,在恢复过程中不需要手动建库,可以直接还原恢复。

2、卸载mysql、安装mysql、允许用户远程访问

https://www.cnblogs.com/feng-jq/p/10282134.html

问题一:

解决mysql8 sql_mode=only_full_group_by问题
参考:https://www.cnblogs.com/ewei/p/13050408.html

'显示
select @@GLOBAL.sql_mode;
set the complete "forgiving" mode
mysql> SET GLOBAL sql_mode='';
alternatively you can set sql mode to the following
mysql> SET GLOBAL sql_mode='STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_ENGINE_SUBSTITUTION';

问题二:找不到libmysqlclient.so.

下载后,放于/usr/lib/下即可

问题三:签名无效

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8C718D3B5072E1F5
最后面的一串数,用错误提示里的数

卸载Mysql5.7 安装8.0参考

https://blog.csdn.net/WANG_yu09/article/details/82709233?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromBaidu-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromBaidu-1.control

彻底删除 mysql

https://blog.csdn.net/iehadoop/article/details/82961264

基本指令:


mysql -u user -p

1、展示mysql
dpkg --list | grep mysql
2、在根目录下查找文件名
sudo find / -name libmysqlclient.so.20
3、启动、停止mysql
service mysql start;
service mysql stop;
4、刷新
flush privileges;