0%

环境

VMware Rocky Linux 9.4 MySQL 8.0

安装mysqlclient报错

1
2
yum install python3-devel
pip3 install mysqlclient

报错:

1
2
3
4
5
6
7
8
9
Downloading http://mirrors.aliyun.com/pypi/packages/37/fb/d9a8f763c84f1e789c027af0ffc7dbf94c9a38db961484f253f0552cbb47/mysqlclient-2.2.1.tar.gz (89 kB)
|████████████████████████████████| 89 kB 80.1 MB/s
Installing build dependencies ... done
Getting requirements to build wheel ... error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python3 /usr/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py get_requires_for_build_wheel /tmp/tmp5fvp1dau
cwd: /tmp/pip-install-1nnewfot/mysqlclient_93347d191d2942c8b2bb37681a22fd09
Exception: Can not find valid pkg-config name.
Specify MYSQLCLIENT_CFLAGS and MYSQLCLIENT_LDFLAGS env vars manually
阅读全文 »

安装并启动MySQL

1
2
dnf install -y mysql-server
systemctl start mysqld.service

设置MySQL的root用户密码

1
mysql_secure_installation

mysql_secure_installation是MySQL的一个安全脚本,执行后根据提示选择密码强度,输入root用户的密码

查看MySQL的版本

通过mysqladmin查到MySQL版本为8.0.36

1
2
3
4
5
mysqladmin -u root -p version
Enter password:

....
Server version 8.0.36

连接MySQL

1
mysql -u root -p

再输入你之前设置的root用户密码即可。

阅读全文 »

Django快速上手

参考: Django快速上手

再写几个页面

编辑demo1/urls.py, 添加URL和视图函数映射

1
2
3
4
5
urlpatterns = [
path('index/', views.index),
path('user/list/', views.user_list),
path('user/add/', views.user_add),
]

编辑app01/views.py,添加几个函数

1
2
3
4
5
6
7
8
9
10
11
from django.shortcuts import render, HttpResponse

# Create your views here.
def index(request):
return HttpResponse("Hello World")

def user_list(request):
return HttpResponse("User List")

def user_add(request):
return HttpResponse("User add")

templates模板的运用

阅读全文 »

问题描述

我想通过iptables允许以下这20个端口通过:

1
iptables -A INPUT -p tcp -i eth0 -m multiport --dports 22,80,443,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46 -j ACCEPT

执行后报错,iptables: too many ports specified

原因

查看iptables官方文档, 发现iptables单条multiports规则最多只支持15个端口。 原文如下:

阅读全文 »

问题描述

客户有一台基于Hyper-V创建的RHEL9虚拟机, 安装了MicroK8s, 启动正常。
虚拟机重启后, kubectl报错: Unable to connect to the server: x509: certificate has expired or is not yet valid

定位过程

这个报错说明MicroK8s apiserver证书的有效时间不对。 首先简单了解下Microk8s证书(以下内容 by ChatGPT)

阅读全文 »

问题描述

RHEL9 VM里安装了Microk8s,且使用了Nginx ingress Controller插件,443端口正常。 VM重启一次后,发现443端口没有LISTEN,不能对外提供服务。

定位过程

查看ingress pod状态,为CrashLoopBackOff

1
2
3
# kubectl -n ingress get pods
NAME READY STATUS RESTARTS AGE
nginx-ingress-microk8s-controller-b6krf 0/1 CrashLoopBackOff 1102 (55s ago) 8d
阅读全文 »