mysql8.0版本的服务器名称_Linux服务器配置-VSFTP服务配置(六)

b84b4decc1d0868dbc4e8b3737785713.png

上文:Linux服务器配置-VSFTP服务配置(五)

上文中已经介绍了使用数据库文件方式配置虚拟用户认证登录FTP服务器,这篇文件将介绍通过数据库方式(vsftpd服务+pam_mysql+MySQL)配置虚拟用户认证登录FTP服务器。

一、安装配置MySQL数据库

这里以在CentOS6中安装MySQL5.7.25社区版和在RHEL7中安装MySQL8.0.15社区版为例,下文中的示例图片无特殊说明,均已在CentOS6中安装MySQL5.7.25数据库为主。另外,本人发布文章中的实例都是亲自测试成功后发布的。

1、查看系统中是否安装其他版本的MySQL数据库。

rpm -qa | grep mysql

如果已安装了其他版本的mysql-server,需先停止mysqld服务,再删除安装的mysql软件包。

停止mysql服务

  • CentOS6系统

service mysqld stop

  • RHEL7或CentOS7系统

systemctl stop mysqld

根据所安装的mysql软件包,用 yum remove 或 rpm -e 命令删除。

2、下载mysql的repo源。

在MySQL官网https://dev.mysql.com/downloads/repo/yum/,选择适合的Linux平台发行包,下载repo源。

或用wget命令在Linux系统中直接下载repo源rpm包。(以下为适合RHEL Linux/ Oracle Linux的发行版的rpm包)

  • CentOS6系统

wget https://dev.mysql.com/get/mysql80-community-release-el6-2.noarch.rpm

  • RHEL7或CentOS7系统

wget https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm

3、安装下载的软件包。

安装软件包后,会获得两个mysql的repo源:/etc/yum.repos.d/mysql-community.repo 和 /etc/yum.repos.d/mysql-community-source.repo。

  • CentOS6系统

rpm -ivh /root/mysql80-community-release-el6-2.noarch.rpm

  • RHEL7或CentOS7系统

rpm -ivh /root/mysql80-community-release-el7-2.noarch.rpm

yum clean all

yum makecache

4、查看repo源当前启用的是哪个MySQL版本的存储库。(即当前repo源支持的MySQL版本)

MySQL的不同发行版托管在不同的子存储库中。默认情况下启用最新(当前为MySQL 8.0.15)的子存储库,并禁用所有其他版本的子存储库。使用以下命令查看MySQL Yum存储库中的所有子存储库及子存储库启用或禁用状态。

yum repolist all | grep mysql

4760a85f5cc995877bbf160ad00cf858.png

在这里可以看出当前repo源支持的子存储库及已启用了mysql插件、工具及8.0版本的子存储库。

5、设置repo源启用哪个版本的子存储库。(即更换repo源当前支持的MySQL版本)

yum-config-manager --disable mysql80-community#关闭mysql8.0版本

yum-config-manager --enable mysql57-community #启用mysql5.7版本

yum repolist all | grep mysql #查看mysql5.7版本子存储库是否开启

除了使用以上命令之外,还可以通过手动编辑/etc/yum.repos.d/mysql-community.repo 文件来设置 ,将文件中相应MySQL版本的“enabled=”设置为1或0。(1表示启用,0表示关闭)

注:如果需要安装最新版本的MySQL数据库,此步可省略。

192ecf1177c21673525a295be31e13bd.png

6、安装mysql-community(社区版)数据库

yum install -y mysql-community-server

7、查看mysql的安装版本。

mysqladmin -V

CentOS6系统

6fbadc18ca19ba90056a1c14ae2c4bd6.png

RHEL7系统

733ac2bdf785bc472cf1b04f70469aa3.png

8、修改MySQL的配置文件(/etc/my.cnf)

备份配置文件

cp /etc/my.cnf /etc/my.cnf.bak

修改配置文件

vim /etc/my.cnf

#设置mysql数据字符集

character-set-server=utf8#MySQL-5.7版本

character-set-server=utf8mb4#MySQL-8.0版本

#设置mysql的端口号,默认为3306。

port=3306

设置mysql表名是否区分大小写:0表示区分大小写;1表示不区分大小写

lower_case_table_names=1

9、启动MySQL数据库。

  • CentOS6系统

service mysqld start

  • RHEL7或CentOS7系统

systemctl start mysqld.service

10、查询mysqld服务的运行状态并设置为开机自启。

  • CentOS6系统

service mysqld status#查询mysqld服务运行状态

chkconfig mysqld on#设置mysqld服务开机自启

chkconfig --list | grep mysqld #查询mysql服务开机自启状态

  • RHEL7或CentOS7系统

systemctl status mysqld #查询mysqld服务运行状态

systemctl enable mysqld#设置mysqld服务开机自启

systemctl list-unit-files | grep mysqld#查询mysql服务开机自启状态

11、查看MySQL数据库root用户的初始密码。

cat /var/log/mysqld.log | grep 'A temporary password'

8ce803835aa43bef5bcdedbbd72805c4.png

12、登录MySQL数据库并设置root用户密码。

a、配置MySQL用户密码复杂度说明

validate_password.policy=0

设置密码强度检查等级。

密码强度检查等级为:0 or LOW、1 or MEDIUM、2 or STRONG。有以下取值:

0 or LOW :测试项目为Length(密码长度) 。

1 or MEDIUM:测试项目为Length; numeric, lowercase/uppercase, and special characters(密码的长度、数字、大小写和特殊字符) ,此项为默认值。

2 or STRONG:测试项目为Length; numeric, lowercase/uppercase, and special characters; dictionary file(密码的长度、数字、大小写、特殊字符和密码字典文件。)

validate_password.dictionary_file

设置用于验证密码强度的字典文件路径。

validate_password.mixed_case_count=0

设置密码大小写字符的长度

validate_password.number_count=0

设置密码数字的长度

validate_password.special_char_count=0

设置密码特殊字符的长度

validate_password.length=0

设置密码的最小长度,默认为8。

注:validate_password.length 的长度要大于 validate_password.mixed_case_count + validate_password.number_count + validate_password.special_char_count 的和。

b、FLUSH PRIVILEGES—SQL语句使用说明

此SQL语句的作用是从内置的mysql库中,将当前user和privilige表中的用户信息与权限信息提取到内存中。MySQL用户数据和权限被修改后,在“不重启mysqld服务"的情况下直接生效。

c、首次登录MySQL数据库

首次登录MySQL数据库,需使用上步查询到的初始密码。登录MySQL数据库的命令为:mysql -u username -h host -P port -p password。

在MySQL-5.7版本以后,首次登录MySQL数据库,必须先修改root用户密码后才能进行其他数据库操作,密码要求至少8位,需要包含大小写字母、数字和特殊字符。

注:下文中“mysql>”为数据库中的命令提示符,其后为要执行的SQL语句。

#使用root用户本地登录MySQL数据库。

mysql -u root -p

#修改root用户密码。(单引号内的password为新密码)

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';

mysql> FLUSH PRIVILEGES;#刷新缓存

若想设置为简单密码如123456,则要通过以下SQL语句来设置。

  • MySQL-5.7版本

mysql> SET GLOBAL validate_password_policy=0; #设置用户密码的检查强度

mysql> SET GLOBAL validate_password_length=6; #设置用户密码最小位数

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';#修改root用户密码

mysql> FLUSH PRIVILEGES;#刷新缓存

mysql> SELECT @@validate_password_policy;#查看用户密码的检查强度设置

mysql> SHOW VARIABLES LIKE 'validate_password%'; #查看用户密码选项的设置

  • MySQL-8.0版本

mysql> SET GLOBAL validate_password.policy=0; #设置用户密码的检查强度

mysql> SET GLOBAL validate_password.length=6;#设置用户密码最小位数

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';#修改root用户密码

mysql> FLUSH PRIVILEGES;#刷新缓存

mysql> SELECT @@validate_password.policy;#查看用户密码的检查强度设置

mysql> SHOW VARIABLES LIKE 'validate_password%'; #查看用户密码选项的设置

以上只是临时配置,若要永久生效可在MySQL配置文件(/etc/my.cnf)中,加入如下配置项,并重启mysqld服务。

  • CentOS6系统

validate_password_policy=0

validate_password_length=6

  • RHEL7或CentOS7系统

validate_password.policy=0

validate_password.length=6

eaf25288f8fc08950661ff3442adbaf3.png

可通过quit命令退出MySQL数据库。

13、安全设置MySQL数据库

通过安全设置向导,对MySQL数据库进行安全设置操作。

安全设置分为以下几个选项:

  • 修改root用户的密码
  • 是否移除匿名用户
  • 是否禁用root账户远程登录
  • 是否移除测试数据库(test)
  • 是否重新加载授权表

在Linux系统中执行以下命令,运行安全设置向导。

mysql_secure_installation

9f3389335dc52d1e595059e761d32f56.png

14、远程链接MySQL数据库配置

建议在测试或开发环境下开启root用户远程访问MySQL数据库的权限;在生产环境下,通过建立数据库管理员DBA,并授予相应的权限来远程管理数据库。

a、改表法

通过修改mysql内置数据库中user表host字段的值,可使root或其他用户远程访问MySQL数据库。

使用root用户登录MySQL数据库。

mysql -u root -p #登录MySQL数据库

mysql> USE mysql; #转到名为mysql的内置数据库

mysql> SELECT user,host FROM user;#查询user表的记录(仅显示出user列和host列)。

mysql> UPDATE user SET host = '%' WHERE user = 'root';#修改user表,user字段=root的host字段值为%。(也就是设置root用户可使用任何地址远程访问数据库,%表示任何地址。)

mysql> FLUSH PRIVILEGES;#刷新缓存

mysql> SELECT user,host FROM user;#查询user表的记录(仅显示出user列和host列)。

aa3f94516a4162445522918513a49a72.png

b、授权法

mysql -u root -p #登录MySQL数据库

mysql> USE mysql; #转到名为mysql的内置数据库

  • 在MySQL-8.0版本中

mysql> CREATE USER 'admin'@'192.168.1.%' IDENTIFIED BY '123456'; #创建新用户、设置密码并设置允许远程访问的IP地址段(用户名admin、密码123456、可远程访问的IP地址段为192.168.1.0)

mysql> GRANT ALL PRIVILEGES ON *.* TO 'admin'@'192.168.1.%' WITH GRANT OPTION; #设置新建用户对所有数据库对象具有全部的操作权限。(MySQL 赋予用户权限的SQL语句的简单格式为:GRANT 权限 ON 数据库对象 TO 用户,如果要使该用户可以将自己拥有的权限授权给别人,可加上WITH GRANT OPTION选项。)

mysql> FLUSH PRIVILEGES;#刷新缓存

mysql> SHOW GRANTS FOR 'admin'@'192.168.1.%';#查看新建用户的权限

8166cbd69e7ec028107136a667e455da.png
  • 在MySQL-5.7版本中

mysql> GRANT ALL PRIVILEGES ON *.* TO 'admin'@'192.168.1.%' IDENTIFIED BY '123456' WITH GRANT OPTION; #MySQL8.0以下的版本,创建用户和设置用户权限,可以使用一条SQL语句完成。

mysql> FLUSH PRIVILEGES;#刷新缓存

mysql> SHOW GRANTS FOR 'admin'@'192.168.1.%';#查看新建用户的权限

4e3c67a90a37a382a86712099e1cd5d6.png

15、防火墙配置

  • CentOS6系统

iptables -t filter -I INPUT -p tcp -m tcp --dport 3306 -m state --state NEW -j ACCEPT #添加防火墙规则

service iptables save#保存防火墙规则

service iptables restart #重启防火墙

iptables -t filter --line-number -nL INPUT#查看现有防火墙规则

a4eb22dfbddfc03d3deeb576d64ac240.png
  • RHEL7或CentOS7系统

firewall-cmd --permanent --zone=public --add-port=3306/tcp#添加防火墙规则

firewall-cmd --reload#重载防火墙

firewall-cmd --list-all #查看现有防火墙规则

3d127c3cb89bb84393e4a229e9e2d4ac.png

16、远程链接MySQL数据库验证

在Linux系统中使用MySQL客户端验证远程链接

mysql -u admin -h 192.168.1.90 -p

fd6e792c78807474003e654bf60fdab7.png

在Windows系统中使用Navicat Premium 12工具远程链接

27884b0b393f88368c8523a6b5fdc7df.png

二、安装pam-mysql

1、CentOS6系统yum方式安装

a、安装EPEL repo源

yum install -y epel-release 或 rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

yum clean all

yum makecache

b、安装pam-mysql

yum install -y pam_mysql

2、RHEL7或CentOS7系统安装

a、下载pam_mysql-0.8.1-0.22.el7.lux.x86_64.rpm包

wget http://repo.iotti.biz/CentOS/7/x86_64/pam_mysql-0.8.1-0.22.el7.lux.x86_64.rpm

b、安装下载的软件包

rpm -ivh pam_mysql-0.8.1-0.22.el7.lux.x86_64.rpm

3、查询pam_mysql.so是否存在

find / -name pam_mysql.so

三、实例说明通过数据库方式(vsftpd服务+pam_mysql+MySQL)配置虚拟用户认证登录FTP服务器。

1、配置软件环境说明。

CentOS6系统

  • CentOS release 6.10 (Final)
  • vsftpd-2.2.2-24.el6.x86_64
  • MySQL-5.7.25
  • pam_mysql-0.7-0.12

RHEL7系统

  • Red Hat Enterprise Linux Server release 7.6 (Maipo)
  • vsftpd-3.0.2-25.el7.x86_64
  • MySQL-8.0.15
  • pam_mysql-0.8.1-0.22

服务器配置要求:

  • FTP服务采用被动模式运行,只允许虚拟用户登录,并将被动端口锁定在59800-59900之间。
  • 虚拟用户信息保存在MySQL数据库中。
  • 虚拟用户snowfox为FTP管理员,其FTP根目录设定在/var/vftproot目录中,该用户具有可下载、上传、新建目录(文件)、更名、及删除文件的权限。
  • 虚拟用户wendy为一般用户,其FTP根目录设定在/var/vftproot/wendy目录中(即只能访问自己的FTP目录),该用户具有可下载、上传、新建目录(文件)、更名、及删除文件的权限。
  • 虚拟用户itcat为一般用户,其FTP根目录设定在/var/vftproot目录中(即可访问其他用户FTP目录),该用户只有查看和下载文件的权限。
e4ace56aff4ea887b6d79426b7bd336d.png

2、创建本地映射用户,并设置FTP目录的权限。

adduser -d /var/vftproot -s /sbin/nologin virftp

chmod -R 755 /var/vftproot

3、配置MySQL数据库,用于vsftp虚拟用户数据库认证登录。

a、创建vsftp虚拟用户数据库认证登录所需要的库文件。

登录MySQL,创建vsftpdb数据库。

mysql -u root -p

mysql> CREATE DATABASE vsftpdb;

af47b91c158a36f47653182007bc8b79.png

b、在vsftpdb数据库中创建用户表vsftp_users。

mysql> USE vsftpdb; #使用vsftpdb数据库

mysql> select database(); #查看当前用户所使用的数据库

mysql> CREATE TABLE vsftp_users( #建立vsftp用户表vsftp_users

user_id SMALLINT AUTO_INCREMENT NOT NULL, #设置表的用户id字段

user_name CHAR(20) NOT NULL, #设置表的用户名字段

user_password CHAR(48) BINARY NOT NULL, #设置表的用户密码字段

PRIMARY key(user_id)); #设置表的主键为user_id字段

mysql> DESC vsftp_users; #查看vsftp_users表结构的详细信息

b8551dd65bd76239fc8bc63963b2567c.png

c、在vsftp_users表中批量添加vsftp虚拟用户信息

mysql> INSERT INTO vsftp_users (user_name,user_password) VALUE

('snowfox',MD5('666666')),

('wendy',MD5('666666')),

('itcat',MD5('666666'));

mysql> SELECT * FROM vsftp_users; #查询vsftp_users表的所有记录

86790332a48f3ad85729f67fe2a77053.png

d、添加FTP数据库用户vsftp,并设置此用户只有查询vsftpdb数据库中的所有表的权限。

mysql> USE mysql;

mysql> CREATE USER 'vsftp'@'localhost' IDENTIFIED BY 'vsftpd';#创建新用户并设置密码

mysql> GRANT SELECT ON vsftpdb.* TO 'vsftp'@'localhost'; #设置新建用户并对其设置相关权限

mysql> FLUSH PRIVILEGES; #刷新缓存

mysql> SHOW GRANTS FOR 'vsftp'@'localhost'; #查看新建用户的权限

357b59eb09db00bfc2fa9df29afec0dc.png

MySQL-8.0数据库

由于MySQL-8.0之前版本的加密规则是mysql_native_password,而MySQL-8.0的加密规则是caching_sha2_password,所以数据库用户在使用pam_mysql.so与MySQL-8.0版本的数据库链接时,需要修改相应数据库用户的加密规则为mysql_native_password。

mysql> ALTER USER 'vsftp'@'localhost' IDENTIFIED WITH mysql_native_password BY 'vsftpd';

mysql> FLUSH PRIVILEGES;

4、建立PAM认证文件

在/etc/pam.d/目录中创建用于vsftp的PAM认证文件。

vim /etc/pam.d/vsftpd.mysql

加入以下语句

auth required /lib64/security/pam_mysql.so user=vsftp passwd=vsftpd host=localhost db=vsftpdb table=vsftp_users usercolumn=user_name passwdcolumn=user_password crypt=3

account required /lib64/security/pam_mysql.so user=vsftp passwd=vsftpd host=localhost db=vsftpdb table=vsftp_users usercolumn=user_name passwdcolumn=user_password crypt=3

注意pam_mysql.so文件的路径。

说明:

pam_mysql.so模块选项

-- verbose 设置为1则显示详细的调试信息,默认0

-- debug 开启调试模式

-- user mysql数据库认证的用户名

-- passwd mysql数据库认证的密码

-- host mysql数据库的主机名称或IP

-- db 包含验证信息的数据库名称

-- table 包含验证信息的数据库表名称

-- usercolumn 包含验证的用户名列

-- passwdcolumn 包含验证的密码列

-- crypt 密码加密方式,

0 无加密,默认为此值;

1 使用crypt(3)函数加密;

2 使用MySQL的PASSWORD函数加密;(在mysql8.0中已经取消此函数)

3 使用普通十六进制md5加密;

4 使用普通十六机制SHA1加密;

-- sqllog 设置为“true”或“yes”,则启用SQL日志记录,默认false

-- logtable 存储日志的表名称

-- logmsgcoumn 该列存储日志的消息

-- logusercolumn 该列存储产生日志的用户名

-- logpidcolumn 该列存储产生日志的进程PID

5、修改vsftpd配置文件。

备份原配置文件

cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

修改配置文件

vim /etc/vsftpd/vsftpd.conf

具体修改请参阅上篇文章—Linux服务器配置-VSFTP服务配置(五),这里就不再说明。

请注意修改以下配置项:

pam_service_name=/etc/pam.d/vsftpd.mysql

6、为虚拟用户单独创建配置文件及相应目录,已调整各个虚拟用户的不同访问权限。

具体修改请参阅上篇文章—Linux服务器配置-VSFTP服务配置(五),这里就不再说明。

7、防火墙配置

vsftpd服务的防火墙配置已在—Linux服务器配置-VSFTP服务配置(三)中加以说明,这里不再重复。

8、SELinux设置

  • CentOS6系统

更改vsftp的SELinux布尔变量

setsebool -P ftp_home_dir on

setsebool -P allow_ftpd_full_access on

  • RHEL7系统

setsebool -P ftpd_full_access on

9、重启vsftpd服务

  • CentOS6系统

service vsftpd restart

  • RHEL7系统

systemctl restart vsftpd

10、验证配置结果

80f59084f7ce709547e5e444b0544842.png

11、VSFTP与MySQL部署在不同的服务器上

以上实例是VSFTP与MySQL安装在一台服务器上的配置,如果将这两个服务安装在不同的服务器上,例如vsftpd服务安装在地址为192.168.1.100的服务器上,MySQL数据库安装在地址为192.168.1.200的服务器上,配置与上面基本相同,不同之处说明如下。

① 添加FTP数据库用户时,添加的是远程链接用户,远程地址是vsftp服务器的地址。

CREATE USER 'vsftp'@'192.168.1.100' IDENTIFIED BY 'vsftpd';

② 创建用于vsftp的PAM认证文件时,host选项为MySQL服务器的地址。

auth required /lib64/security/pam_mysql.so user=vsftp passwd=vsftpd host=192.168.1.200 db=vsftpdb table=vsftp_users usercolumn=user_name passwdcolumn=user_password crypt=3

account required /lib64/security/pam_mysql.so user=vsftp passwd=vsftpd host=192.168.1.200 db=vsftpdb table=vsftp_users usercolumn=user_name passwdcolumn=user_password crypt=3

以上是我在学习Linux系统中整理的一些学习要点,肯定会有不对的地方,希望各位大侠给与指正,我们共同学习!谢谢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/567382.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java导出csv文件_R语言数据导入与导出

R语言数据导入与导出整这么一个系列,还是因为学R语言时遇到过一个非常“小白友好”的网站“DataScience Made Simple”。相信很多人搜到过这个网站,或许你在意到或许并没在意。年前试着和作者发了一封邮件,想要把他这个网站做成汉语版的帖子发…

主成分分析碎石图_ISLR读书笔记十九:主成分分析(PCA)

本文使用 Zhihu On VSCode 创作并发布前面写的一些统计学习方法都是属于监督学习(supervised learning),这篇主成分分析(principal components analysis,简称 PCA )和下一篇聚类分析(clustering…

office另存为pdf的加载项_pdf怎么转换成word?打工人必备的丛林法则

小编接受了一个工作,要批量将pdf转换成word,而且不太花钱的我(和大部分人一样,只想找免费的工具),在同事的帮助下,找到了很不错的办法,再加上我自己总结的几个办法,给大家分享一些干货。网上有不…

使用gdisk中的n新建分区时没有p和e选项

正常分区界面为: 但是分区时发现 不可选择主分区或者扩展分区。 原因分析: 1、使用p命令查看:已有三个分区 2、再进行分区时: 可能是默认的一个扩展分区---如果可以创建多个逻辑分区 也可能是一个主分区--只能创建一个主分区…

node本地连接服务器的数据库_基于Node.jsORM框架Sequelize的数据库迁移一

开课吧Web前端教程前言在日常的后端项目开发中,我们经常需要和数据库打交道。在这个过程中,我们需要创建数据库、表还有一些测试数据。许多时候,因为业务需求的变更导致的数据库结构的变化,需要修改数据库,添加新的测试…

使用OfficeTool免费安装Office

1、在office tool plus官网下载office tool plus Office Tool Plus 官方网站 - 一键部署 Office 2、安装office tool plus 3、卸载原office:点击工具箱-修复工具-移除Office,选择使用Office Tool Plus移除Office,点击开始。 4、点击部署-产品…

语言线性拟合线对称_文科生都能看懂的机器学习教程:梯度下降、线性回归、逻辑回归...

【新智元导读】虽然在Coursera、MIT、UC伯克利上有很多机器学习的课程,包括吴恩达等专家课程已非常经典,但都是面向有一定理科背景的专业人士。本文试图将机器学习这本深奥的课程,以更加浅显易懂的方式讲出来,让没有理科背景的读者…

c/c++读取txt文件中指定行的内容_和尧名大叔一起从0开始学Python编程-简单读写文件

0基础自学编程是很痛苦的一件事情,所以我想把自己学习的这个过程记录下来,让想学编程的人少走弯路,大叔文化程度较低,可能会犯一些错误,欢迎大家督促我。今天,我们来学习一下用Python简单读写文件&#xff…

excel从只有省市县的地址中分别提取省、市、县

提取省 LEFT(H2,MIN(FIND({"省","市","区"},H2&"省市区"))) 提取市 LEFT(SUBSTITUTE(H23,I23,""),MIN(FIND({"市","区","县","州"},SUBSTITUTE(H23,I23,"")&&qu…

两个字符串组成tuple_史上最全python字符串操作指南

惨不忍睹拿出了看家的老中医野广告,都没能拯救惨淡的selenium剧集。上周五和朋友聊天,说希望看到一些python基础的知识。本来还担心更新基础的东西没人看,但现在看来,最差不过selenium系列了...哈哈。虽然说更新基础知识&#xff…

语言五子棋无ai程序框图_微软多语言预训练模型T-ULRv2登顶XTREME排行榜

编者按:为进一步实现用 AI 赋能用户体验,微软正在不断拓展多语言模型的边界。近日,由微软图灵团队与微软亚洲研究院联合探索的最新跨语言研究成果——多语言预训练模型 T-ULRv2,登顶 XTREME 排行榜,T-ULRv2 可以在相同…

excel学习

1.高配筛选—切片器 (1)创建超级表 选中某个单元格,插入,表格。 (2)插入切片器 插入—切片器 (3)改变切片器样式 选中菜单栏切片器,按钮,选择横排 2.subtotal实现动态编号 3-counta 过滤筛选 103-counta 过滤筛选和隐藏

keil3如何放大字体_Word技巧之快速放大字体!快来GET新技能!

一般情况下我们都会选择用Word编辑文章,文章编辑完成之后我们通常会对文章进行排版。在排版的过程中如果我们需要将Word字体放大该怎么办呢?今天倾尘跟大家分享的就是办公小技巧:Word 里的字体如何无限放大?方法一:点击…

dlib简便下载方法

一、查看已安装Python版本 二、下载python对应版本的dlib.wlh文件 官方网上边是没有3.7版本往后的dlib,想要下载其它版本的dlib自己去找了,但是我这里只有3.8的需要下载的可以点这里 提取码:dlib 三、在dlib.wlh文件所在路径下,安…

stm32 web get 参数_BlackHat2020议题之Web缓存投毒

周末闲着没事就来学习下新的思路,文章很长,花了一天时间才码出来,所以,你懂我意思吧?对了,周末打算出去走走,所以就不更文了本文将会介绍Web缓存投毒的各种骚姿势以及利用链,并会搭配相应案例进行讲解&…

c3p0 服务启动获取连接超时_JDBC数据库连接池

连接池的本质是构建一个容器,容器是用来存创建好的线程,http连接、数据库连接、netty连接等各个连接池的使用大致分为三个部分1、首先是初始化连接池,根据设置相应的参数、连接池的大小、核心连接数等参数,初始化创建数据库、http…

python与数据处理_python数据处理:数据合并和Reshaping

本文资料来自于: Python for Data Analysis: Chapter5, 7, 12 文中实例查看地址:http://nbviewer.jupyter.org/github/RZAmber/for_blog/blob/master/learn_numpy.ipynb 1. Combing and Merging Data Sets 在pandas中,数据可以通过三种方式进…

使用详解_Log4j2使用详解

日志框架简单比较(slf4j、j.u.l、log4j、logback、log4j2 )slf4j:slf4j是对所有日志框架制定的一种规范、标准、接口,并不是一个框架的具体的实现,因为接口并不能独立使用,需要和具体的日志框架实现配合使用…

paddlehub安装及对口罩检测

1、安装 python -m pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple pip install -i https://mirror.baidu.com/pypi/simple paddlehub 报错,解决方案: >pip install -i https://mirror.baidu.com/pypi/simple paddlehub --use…

语言专项精讲课程 赵海英_最全汇总:沪江日语课程体系指南

沪江日语课程可分为六大类,你可以根据自己的学习意愿快速定位。当然,也有课程涉及多个分类,请仔细查看一下不同课程的偏重,选择适合自己的课程。一、零基础直达 0-N1签约名师:同类课程人气王 签约课程;19节…