云计算第三阶段---DBA数据库管理

news2024/9/28 3:27:31

Day1

一.数据库概述

        计算机中数据存放的仓库,可以按数据类型划分数据库,又可以在数据库中划分更细节的分类存放到相应的表中。

抽象来说就是生活中的菜市场、五金店之类的场所,根据用途开设;划分广泛的还有百货商场、批发市场等。

生活中的数据包括 图片、文字、视频、音乐等各种各种渠道信息。

数据库常见格式:.sql               #方便后续学习过程中,数据库导入导出内容测试,

常见数据库系统有以下几种:

我上大学时候使用的是MySQLTomcat两种类型,同学们想要下载推荐都下个免费版,或者开源的免费版。因为在工作中有的数据库软件公司发现你用的是破解版,时机到了会找你索要赔偿。

 ̄□ ̄||

数据库类型分为:

#tomcat图形数据库,就需要建模,而建模需要换成收费版,有包括建模的更多功能#

二.部署MySQL服务

特点:

部署MySQL环境:

1 案例1:构建MySQL服务器

1.1 问题

  1. 在IP地址192.168.88.50主机和192.168.88.51主机上部署mysql服务
  2. 练习必备命令的使用

1.2 方案

准备2台虚拟机,要求如下:

表-1

#练习环境中,记得配置yum源、关闭selinux和防火墙

1.3 步骤

步骤一:安装软件

命令操作如下所示:
#装mysql-server自动补全依赖,以防万一,就一起下。

mysql-server 提供服务软件 

mysql 提供命令软件

//安装提供服务和命令软件
[root@mysql50 ~]# yum -y install mysql-server  mysql 
软件已安装
[root@mysql50 ~]# rpm -q mysql-server  mysql
mysql-server-8.0.26-1.module+el8.4.0+652+6de068a7.x86_64
mysql-8.0.26-1.module+el8.4.0+652+6de068a7.x86_64
[root@mysql50 ~]#
//查看软件信息
[root@mysql50 ~]# rpm -qi mysql-server 
Name        : mysql-server
Version     : 8.0.26
Release     : 1.module+el8.4.0+652+6de068a7
Architecture: x86_64
Install Date: 2023年03月13日 星期一 12时09分38秒
Group       : Unspecified
Size        : 126674945
License     : GPLv2 with exceptions and LGPLv2 and BSD
Signature   : RSA/SHA256, 2021年09月22日 星期三 07时27分14秒, Key ID 15af5dac6d745a60
Source RPM  : mysql-8.0.26-1.module+el8.4.0+652+6de068a7.src.rpm
Build Date  : 2021年09月22日 星期三 07时06分32秒
Build Host  : ord1-prod-x86build005.svc.aws.rockylinux.org
Relocations : (not relocatable)
Packager    : infrastructure@rockylinux.org
Vendor      : Rocky
URL         : http://www.mysql.com
Summary     : The MySQL server and related files
Description :
MySQL is a multi-user, multi-threaded SQL database server. MySQL is a
client/server implementation consisting of a server daemon (mysqld)
and many different client programs and libraries. This package contains
the MySQL server and some accompanying files and directories.
[root@mysql50 ~]# systemctl  start  mysqld  //启动服务
[root@mysql50 ~]# systemctl  enable  mysqld  //开机运行
         

步骤二:查看端口号和进程名

  1. [root@mysql50 ~]# ps -C mysqld //仅查看mysqld进程
  2. PID TTY TIME CMD
  3. 21912 ? 00:00:00 mysqld
  4. [root@mysql50 ~]#
  5. [root@mysql50 ~]# ss -utnlp | grep 3306 查看端口
  6. tcp LISTEN 0 70 *:33060 *:* users:(("mysqld",pid=21912,fd=22))
  7. tcp LISTEN 0 128 *:3306 *:* users:(("mysqld",pid=21912,fd=25))
  8. [root@mysql50 ~]#
  9. [root@mysql50 ~]# netstat -utnlp | grep mysqld //仅查看mysqld进程
  10. tcp6 0 0 :::33060 :::* LISTEN 21912/mysqld
  11. tcp6 0 0 :::3306 :::* LISTEN 21912/mysqld
  12. [root@mysql50 ~]#

#MySQL 8中的3306端口是MySQL服务默认使用的端口,主要用于建立客户端与MySQL服务器之间的连接。

支持协议: TCP。 

#两个配置文件都是可以tab补全的

主配置文件位置: /etc/my.cnf.d/mysql-server.conf   
错误日志文件: /var/log/mysql/mysqld.log

步骤三:连接服务。

说明: 数据库管理员本机登陆默认没有密码

  1. [root@mysql50 ~]# mysql //连接服务
  2. Welcome to the MySQL monitor. Commands end with ; or \g.
  3. Your MySQL connection id is 8
  4. Server version: 8.0.26 Source distribution
  5. Copyright (c) 2000, 2021, Oracle and/or its affiliates.
  6. Oracle is a registered trademark of Oracle Corporation and/or its
  7. affiliates. Other names may be trademarks of their respective
  8. owners.
  9. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  10. mysql> 登陆后的提示符
  11. mysql> exit //断开连接
  12. Bye
  13. [root@mysql50 ~]#

步骤四:配置第2台数据库服务器MySQL51。

命令操作如下所示:

  1. [root@mysql51 ~]# yum -y install mysql-server mysql
  2. [root@mysql51 ~]# systemctl start mysqld
  3. [root@mysql51 ~]# systemctl enable mysqld
  4. [root@mysql51 ~]# mysql
  5. mysql> exit
  6. Bye
  7. [root@mysql51 ~]#

三.基础查询语句

MySQL语句规范:

-P: 数据服务器端口   -h:IP地址  。 exit:退出数据库  ctrl+D也可以退出。

1.不区分大小写。   2. 语句以 “ ;” ,  “\g”,  “\G” 结尾。 

3.注释 : 

单行注释 :“ -- ”           多行注释:  /*  内容   /*

SQL语句分类

DQL查询语句DML 操作语言DDL 定义语言 TCL 事务控制语言DCL 控制语言
【不修改本身数据】selectinsert插入数据、update更新数据、delete删除数据。create、alter、 drop。 针对:表库索引

commit提交 ,rollback:回滚savepoint:设置保存点。

set transaction 设置事务特性

grant:授予权限。

revoke:撤销权限

查看MySQL版本: select version();  
查看系统时间: select now();
查看当前用户: select  user();

脚本案例:

  1. [root@mysql50 ~]# mysql //连接服务
  2. mysql> select version() ; //查看数据库软件版本
  3. +-----------+
  4. | version() |
  5. +-----------+
  6. | 8.0.26 |
  7. +-----------+
  8. 1 row in set (0.00 sec)
  9. mysql> select user() ; //查看登陆的用户和客户端地址
  10. +----------------+
  11. | user() |
  12. +----------------+
  13. | root@localhost | 管理员root本机登陆
  14. +----------------+
  15. 1 row in set (0.00 sec)
  16. mysql> show databases; //查看已有的库
  17. +--------------------+
  18. | Database |
  19. +--------------------+
  20. | information_schema |
  21. | mysql |
  22. | performance_schema |
  23. | sys |
  24. +--------------------+
  25. 4 rows in set (0.00 sec)
  26. mysql>

以下是MySQL自带数据库介绍

默认4个库 不可以删除,存储的是 服务运行时加载的不同功能的程序和数据。

information_schema:是MySQL数据库提供的一个虚拟的数据库,存储了MySQL数据库中的相关信息,比如数据库、表、列、索引、权限、角色等信息。它并不存储实际的数据,而是提供了一些视图和存储过程,用于查询和管理数据库的元数据信息。

mysql:存储了MySQL服务器的系统配置、用户、账号和权限信息等。它是MySQL数据库最基本的库,存储了MySQL服务器的核心信息。


#MySQL数据库中有user表,里面有一个user表,想要在其他软件连接MySQL数据库,就需要设置该表的user=root 位置,host的localhost:本地  设置为 % . 意思:所有机器都可以登录#


performance_schema:存储了MySQL数据库的性能指标、事件和统计信息等数据,可以用于性能分析和优化。

sys:是MySQL 8.0引入的一个新库,它基于information_schema和performance_schema视图,提供了更方便、更直观的方式来查询和管理MySQL数据库的元数据和性能数据。

  1. mysql> select database(); //查看当前在那个库里 null 表示没有在任何库里
  2. +------------+
  3. | database() |
  4. +------------+
  5. | NULL |
  6. +------------+
  7. 1 row in set (0.00 sec)
  8. mysql> use mysql ; //切换到mysql库
  9. mysql> select database(); // 再次显示所在的库
  10. +------------+
  11. | database() |
  12. +------------+
  13. | mysql |
  14. +------------+
  15. 1 row in set (0.00 sec)
  16. mysql> show tables; //显示库里已有的表
  17. +------------------------------------------------------+
  18. | Tables_in_mysql |
  19. +------------------------------------------------------+
  20. | columns_priv |
  21. | component |
  22. | db |
  23. | default_roles |
  24. | engine_cost |
  25. | func |
  26. | general_log |
  27. | global_grants |
  28. | gtid_executed |
  29. | help_category |
  30. | help_keyword |
  31. | help_relation |
  32. | help_topic |
  33. | innodb_index_stats |
  34. | innodb_table_stats |
  35. | password_history |
  36. | plugin |
  37. | procs_priv |
  38. | proxies_priv |
  39. | replication_asynchronous_connection_failover |
  40. | replication_asynchronous_connection_failover_managed |
  41. | replication_group_configuration_version |
  42. | replication_group_member_actions |
  43. | role_edges |
  44. | server_cost |
  45. | servers |
  46. | slave_master_info |
  47. | slave_relay_log_info |
  48. | slave_worker_info |
  49. | slow_log |
  50. | tables_priv |
  51. | time_zone |
  52. | time_zone_leap_second |
  53. | time_zone_name |
  54. | time_zone_transition |
  55. | time_zone_transition_type |
  56. | user |
  57. +------------------------------------------------------+
  58. 37 rows in set (0.00 sec)
  59. mysql> exit ; 断开连接
  60. Bye
  61. [root@mysql50 ~]#

设置数据库登录账号密码

案例2:密码管理

2.1 问题

1) 在192.168.88.50主机做如下练习:

  1. 设置root密码为123
  2. 修改root密码为 456
  3. 破解root密码为 123456

设置root密码为123

  1. [root@mysql50 ~]# mysqladmin -uroot -p password "123"
  2. Enter password: //敲回车
  3. mysqladmin: [Warning] Using a password on the command line interface can be insecure.
  4. Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety
  5. #设置完成后,不能直接用MySQL 进入数据库。需要使用用户密码。

修改root密码为 456

  1. [root@mysql50 ~]# mysqladmin -uroot -p123 password "456"
  2. mysqladmin: [Warning] Using a password on the command line interface can be insecure.
  3. Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.

#修改新密码后,旧密码作废,需要设置新密码登录。


破解root密码

在mysql50主机做此练习

修改主配置文件

  1. [root@mysql50 ~]# vim /etc/my.cnf.d/mysql-server.cnf
  2. [mysqld]
  3. skip-grant-tables //手动添加此行 作用登陆时不验证密码
  4. ……
  5. ……
  6. :wq
  7. [root@mysql50 ~]# systemctl restart mysqld //重启服务 让服务以新配置运行

############配置了新东西,都需要重新启动服务才能看到结果。

连接服务

  1. [root@mysql50 ~]# mysql
  2. Welcome to the MySQL monitor. Commands end with ; or \g.
  3. Your MySQL connection id is 7
  4. Server version: 8.0.26 Source distribution
  5. Copyright (c) 2000, 2021, Oracle and/or its affiliates.
  6. Oracle is a registered trademark of Oracle Corporation and/or its
  7. affiliates. Other names may be trademarks of their respective
  8. owners.
  9. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

查看存放密码的表头名

  1. Mysql> desc mysql.user ;

删除不知道的密码

  1. mysql> update mysql.user set authentication_string="" where user="root" and host="localhost";

删除后的效果

  1. mysql> select host , user , authentication_string from mysql.user where user="root";
  2. +-----------+------+-------------------------------------------+
  3. | host | user | authentication_string |
  4. +-----------+------+-------------------------------------------+
  5. | localhost | root |                                          |
  6. +-----------+------+-------------------------------------------+
  7. 1 row in set (0.01 sec)
  8. mysql> exit; 断开连接

编辑配置文件 

  1. [root@mysql50 ~]# vim /etc/my.cnf.d/mysql-server.cnf
  2. [mysqld]
  3. #skip-grant-tables //破完密码需要添加注释。
  4. :wq
  5. [root@mysql50 ~]# systemctl restart mysqld //重启服务 作用让注释生效

无密码登陆

  1. [root@localhost ~]# mysql
  2. Welcome to the MySQL monitor. Commands end with ; or \g.
  3. Your MySQL connection id is 8
  4. Server version: 8.0.26 Source distribution
  5. Copyright (c) 2000, 2021, Oracle and/or its affiliates.
  6. Oracle is a registered trademark of Oracle Corporation and/or its
  7. affiliates. Other names may be trademarks of their respective
  8. owners.
  9. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

设置root用户本机登陆密码

  1. mysql> alter user root@"localhost" identified by "123456";
  2. Query OK, 0 rows affected (0.00 sec)
  3. mysql> exit 断开连接

不输密码无法登陆

  1. [root@localhost ~]# mysql
  2. ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

使用破解的密码登陆

  1. [root@localhost ~]# mysql -uroot -p123456
  2. mysql: [Warning] Using a password on the command line interface can be insecure.
  3. Welcome to the MySQL monitor. Commands end with ; or \g.
  4. Your MySQL connection id is 10
  5. Server version: 8.0.26 Source distribution
  6. Copyright (c) 2000, 2021, Oracle and/or its affiliates.
  7. Oracle is a registered trademark of Oracle Corporation and/or its
  8. affiliates. Other names may be trademarks of their respective
  9. owners.
  10. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  11. mysql>
  12. mysql> 登陆成功
  13. mysql> show databases; 查看已有的库
  14. +--------------------+
  15. | Database |
  16. +--------------------+
  17. | information_schema |
  18. | mysql |
  19. | performance_schema |
  20. | sys |
  21. +--------------------+
  22. 4 rows in set (0.01 sec)
  1. [root@localhost ~]# mysql
  2. ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

 案例3:筛选条件            

#没有文件的话,可以看看。或者网上下几个来测试。知识点是想通的#

3.1 问题

  1. 准备练习环境
  2. 练习数值比较
  3. 练习范围匹配
  4. 练习模糊匹配
  5. 练习正则匹配
  6. 练习逻辑比较
  7. 练习字符比较/空/非空
  8. 练习别名/去重/合并

3.2 方案

拷贝tarena.sql文件到mysql50主机里,然后使用tarena.sql创建练习使用的数据。

3.3 步骤

实现此案例需要按照如下步骤进行。#这是我们上课的教学环境。#

步骤一:准备练---+

步骤八:练习别名/去重/合并

定义别名使用 as 或 空格

 
  1. mysql> select name , homedir from tarena.user;
  2. mysql> select name as 用户名 , homedir 家目录 from tarena.user;

拼接 concat()

 
  1. mysqlcat(name,"-",uid) as 用户信息 from tarena.user where uid <= 5;
  2. +--------------+
  3. | bin-1 |
  4. | daemon-2 |
  5. | adm-3 |
  6. | lp-4 |
  7. | sync-5 |
  8. +--------------+
  9. 6 rows in set (0.00 sec)
  10. //拼接
  11. mysql> select concat(name , "-" , uid) as 用户信息 from tarena.user where uid <= 5;

多列拼接

 
  1. mysql> select concat(name , "-" , uid , "-" , gid) as 用户信息 from tarena.user where uid <= 5;
  2. +--------------+
  3. | 用户信息 |
  4. +--------------+
  5. | root-0-0 |
  6. | bin-1-1 |
  7. | daemon-2-2 |
  8. | adm-3-4 |
  9. | lp-4-7 |
  10. | sync-5-0 |
  11. +--------------+

去重显示 distinct 字段名列表

 
  1. //去重前输出
  2. mysql> select shell from tarena.user where shell in ("/bin/bash","/sbin/nologin") ;
  3. +---------------+
  4. | shell |
  5. +---------------+
  6. | /bin/bash |
  7. | /sbin/nologin |
  8. | /sbin/nologin |
  9. | /sbin/nologin |
  10. | /sbin/nologin |
  11. | /sbin/nologin |
  12. | /sbin/nologin |
  13. | /sbin/nologin |
  14. | /sbin/nologin |
  15. | /sbin/nologin |
  16. | /sbin/nologin |
  17. | /sbin/nologin |
  18. | /sbin/nologin |
  19. | /sbin/nologin |
  20. | /sbin/nologin |
  21. | /sbin/nologin |
  22. | /sbin/nologin |
  23. | /sbin/nologin |
  24. | /sbin/nologin |
  25. | /sbin/nologin |
  26. | /bin/bash |
  27. | /sbin/nologin |
  28. +---------------+
  29. 22 rows in set (0.00 sec)
  30. //去重后查看
  31. mysql> select distinct shell from tarena.user where shell in ("/bin/bash","/sbin/nologin") ;
  32. +---------------+
  33. | shell |
  34. +---------------+
  35. | /bin/bash |
  36. | /sbin/nologin |
  37. +---------------+
  38. 2 rows in set (0.01 sec)
  39. mysql>


4 案例4:安装图形软件

#可以在网络服务器上设置 数据库的增删改查

4.1 问题

  • 在IP地址192.168.88.50主机安装phpmyadmin软件
  • 客户端通过访问phpmyadmin软件管理数据库

4.2 方案

把用到的软件拷贝的虚拟机mysql50里

在mysql50主机,首先配置运行环境LNP,然后安装phpmyadmin软件,最后打开真机的浏览器输入phpmyadmin的网址访问。

4.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:准备运行环境

命令操作如下所示:

  1. gcc 源码包编译工具
  2. unzip 提供解压.zip 压缩包命令
  3. make 源码软件编译命令
  4. pcre-devel 支持正则表达式
  5. zlib-devel 提供数据压缩命令
  6. [root@mysql50 ~]# yum -y install gcc unzip make pcre-devel zlib-devel //安装依赖
  7. [root@mysql50 ~]# tar -xf nginx-1.22.1.tar.gz //解压源码
  8. [root@mysql50 ~]# cd nginx-1.22.1 //进源码目录
  9. [root@mysql50 nginx-1.22.1]# ./configure //配置
  10. [root@mysql50 nginx-1.22.1]# make && make install //编译并安装
  11. [root@mysql50 nginx-1.22.1]# ls /usr/local/nginx/ //查看安装目录
  12. conf html logs sbin
  13. //修改主配置文件
  14. [root@mysql50 nginx-1.22.1]# vim /usr/local/nginx/conf/nginx.conf
  15. 43 location / {
  16. 44 root html;
  17. 45 index index.php index.html index.htm; //添加首页名
  18. 46 }
  19. 65 location ~ \.php$ {
  20. 66 root html;
  21. 67 fastcgi_pass 127.0.0.1:9000; //访问.php的请求转给本机的9000端口
  22. 68 fastcgi_index index.php;
  23. 69 #fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
  24. 70 include fastcgi.conf; //保存nginx变量文件
  25. 71 }
  26. :wq
  27. [root@mysql50 nginx-1.22.1]# /usr/local/nginx/sbin/nginx //启动服务
  28. [root@mysql50 nginx-1.22.1]# netstat -utnlp | grep 80 //查看端口
  29. tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 42182/nginx: master
  30. [root@mysql50 nginx-1.22.1]#

软件功能说明

  1. php 解释php代码
  2. php-devel php扩展包
  3. php-mysqlnd 连接mysql命令包
  4. php-json 支持json代码
  5. php-fpm 提供fpm服务

安装软件

  1. [root@mysql50 ~]# yum -y install php php-devel php-mysqlnd php-json php-fpm

修改主配置文件

  1. [root@mysql50 ~]# vim +38 /etc/php-fpm.d/www.conf
  2. listen = 127.0.0.1:9000  #监听端口设置,默认是80
  3. :wq
  4. [root@mysql50 ~]# systemctl start php-fpm //启动服务

查看端口  #mysqladmin   

 
  1. [root@mysql50 ~]# netstat -utnlp | grep 9000
  2. tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 67251/php-fpm: mast
  3. [root@mysql50 ~]#

编写php脚本

  1. [root@mysql50 ~]# vim /usr/local/nginx/html/test.php
  2. <?php
  3. $name = "qq" ;
  4. echo $name ;
  5. echo "\n" ;
  6. ?>

步骤二:安装phpmyadmin软件

解压软件

  1. [root@mysql50 ~]# which unzip || yum -y install unzip
  2. [root@mysql50 ~]# unzip phpMyAdmin-5.2.1-all-languages.zip //解压

移动并改名

  1. [root@mysql50 ~]# mv phpMyAdmin-5.2.1-all-languages /usr/local/nginx/html/phpmyadmin

创建主配置文件

  1. [root@mysql50 ~]# cd /usr/local/nginx/html/phpmyadmin/
  2. [root@mysql50 phpmyadmin]# cp config.sample.inc.php config.inc.php

步骤三:客户端访问

打开浏览器输入此网址 效果如图-1所示   

http://192.168.88.50/phpmyadmin

说明:输入数据库管理员root 和 密码 成功后如图-2所示

在数据库服务器里创建普通用户

  1. 创建库
  2. mysql> create database gamedb;
  3. Query OK, 1 row affected (0.01 sec)
  4. 创建用户
  5. mysql> create user dc@"localhost" identified by "123456";
  6. Query OK, 0 rows affected (0.01 sec)
  7. 授权权限
  8. mysql> grant all on gamedb.* to dc@"localhost" ;
  9. Query OK, 0 rows affected (0.00 sec)
  10. mysql>

客户端以上用户密码 登陆 mysqladmin 

可以看到


     第一天涉及到的内容太多了,软件依赖下载,配置  mysqladmin,mysql 和 具体语法的介绍,还有密码用户的授权管理。

 后续内容我放到下几篇文章,不然眼睛看不过来了。O(∩_∩)O

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

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

相关文章

HarmonyOS应用程序访问控制探究

关于作者 白晓明 宁夏图尔科技有限公司董事长兼CEO、坚果派联合创始人 华为HDE、润和软件HiHope社区专家、鸿蒙KOL、仓颉KOL 华为开发者学堂/51CTO学堂/CSDN学堂认证讲师 开放原子开源基金会2023开源贡献之星 一、引言 随着信息技术的飞速发展&#xff0c;移动应用程序已经成为…

【C++】实现日期类相关接口

C语法相关知识点可以通过点击以下链接进行学习一起加油&#xff01;命名空间缺省参数与函数重载C相关特性类和对象-上篇类和对象-中篇类和对象-下篇 本篇将介绍实现日期类中众多接口&#xff0c;同时这其中涉及到很多知识&#xff0c;务必将类和对象相关内容掌握再来实现日期类…

【数据结构】详细介绍栈和队列,解析栈和队列每一处细节

目录 一. 栈 1. 栈的概念 2. 栈的实现 2.1 栈的结构 2.2 初始化栈 2.3 入栈 2.4 出栈 2.5 获取栈顶元素 2.6 获取栈中有效个数 2.7 判断栈是否为空 2.8 销毁栈 二. 队列 1. 队列的概念 2. 队列的实现 2.1 队列的结构 2.2 队列初始化 2.3 销毁队列 2.4 入…

聊聊适配器模式

目录 适配器模式概念 主要实现方式 主要组成 UML用例图 代码示例 生活场景 应用场景 适配器模式概念 适配器模式属于结构型设计模式&#xff0c;它的主要目的是将一个类的接口转换成客户端所期望的另一种接口形式&#xff0c;使得原本接口不兼容的类可以一起工作。 主…

【New SQL】 -- CockroachDB license change

1、CockroachDB 发布了修改开源协议的 releases 北京时间 2024-08-16 &#xff0c;CockroachDB 发布了修改开源协议的 releases。 原文链接&#xff1a;Licensing FAQs Evolving our self-hosted offering and license model CockroachDB License change (again) | Product T…

Kali Linux 定制化魔改 添加常见60渗透工具

项目地址&#xff1a;https://github.com/CuriousLearnerDev/kali-linux-kde-beautify 系统版本&#xff1a;kali linux 2024.1 固件类型&#xff1a;BIOS 用户: zss 密码: ss 完整版 系统压缩大小&#xff1a;18.8 GB 解出来&#xff1a;36.00GB 左右 系统版 系统压缩大小&…

《Cloud Native Data Center Networking》(云原生数据中心网络设计)读书笔记 -- 04路由协议的选择

本章要回答的问题&#xff1a; 路由是如何工作的?有哪些类型的路由协议?Clos 拓扑中的路由协议是如何工作的?什么是无编号接口&#xff0c;以及为什么无编号接口如此重要?如何确定最适合自己需求的路由协议? 路由概述 用最简单的话来说&#xff0c;路由是使用数据包的目…

DESeq2差异基因分析和批次效应移除

差异基因鉴定 基因表达标准化 不同样品的测序量会有差异&#xff0c;最简单的标准化方式是计算counts per million (CPM)&#xff0c;即原始reads count除以总reads数乘以1,000,000。 这种计算方式的缺点是容易受到极高表达且在不同样品中存在差异表达的基因的影响&#xff…

FunClip,音视频识别,自动化剪辑,文本校对,智能纠错,导出SRT

今天给大家介绍一个自动化剪辑项目——FunClip,该项目是由阿里开源的&#xff0c;可以识别音频、视频中的文字&#xff0c;一键剪辑和添加字幕。 FunClip是一款高效的自动化视频剪辑工具&#xff0c;它利用语音识别技术对视频内容进行分析。用户可以在识别结果中选择所需的文本…

重生奇迹MU 梦幻骑士 真正生而高贵的职业

作为重生奇迹MU梦幻骑士中真正生而高贵的职业&#xff0c;圣骑士是玩家们最为追捧的职业之一。在游戏内&#xff0c;圣骑士拥有着强大的防御和治疗能力&#xff0c;成为团队中不可或缺的存在。如果你正准备选择一个强大的职业&#xff0c;那么不妨考虑成为一名圣骑士&#xff0…

选择文件摆渡系统要遵守的“三要”和“三不要”原则

文件摆渡系统不仅可以实现企业网络隔离后的数据摆渡需求&#xff0c;同时也可以视作企业数据安全及网络安全建设的重要组成部分。文件摆渡系统的选择也很关键&#xff0c;在企业进行筛选时&#xff0c;应该遵守“三要”和“三不要”原则。 “三要”之一&#xff1a;要安全 文件…

MySQL对事务的支持

5.MySQL对事务的支持情况&#xff1a; 5.1. 查看存储引擎对事务的支持情况 &#xff1a; 1.SHOW ENGINES 命令来查看当前 MySQL 支持的存储引擎都有哪些&#xff0c;以及这些存储引擎是否支持事务2.下图可以能看出在 MySQL 中&#xff0c;只有InnoDB类型的存储引擎是支持事务…

轻松搞定 Java7 新特性,示例丰富

Java 7 是 Java 语言的一个主要版本&#xff0c;于 2011 年 7 月 28 日正式发布。 由 Sun Microsystems 开发并由 Oracle 公司发布的一个重要版本&#xff0c;它带来了许多新功能特性&#xff0c;增强了编程语言的能力和性能。 以下是一些 Java 7 的主要新功能特性&#xff1…

基于SSM的体育馆预约管理系统---附源码84196

摘 要 体育馆作为一个重要的运动场所&#xff0c;需要进行预约管理以保证资源的合理利用和场馆秩序的维护。传统的人工预约管理方式存在效率低、容易出错等问题&#xff0c;因此&#xff0c;在互联网高速发展的当下&#xff0c;需要设计和实现一个基于SSM的体育馆预约管理系统&…

关于LLC知识9

1、上图有多条增益曲线&#xff0c;是每种不同的输出负载都对应一条增益曲线&#xff0c;在f1时候每个曲线都汇聚一点&#xff0c;说明只要输出电压频率f1时&#xff0c;不论输出负载是多少&#xff0c;增益是一样的&#xff0c;不受负载影响G1&#xff08;Lr与Cr发生谐振&…

[单master节点k8s部署]21.EFK日志收集平台介绍

大型系统是一个分布式部署的架构&#xff0c;不同的服务模块部署在不同的服务器上&#xff0c;问题出现时&#xff0c;大部分情 况需要根据问题暴露的关键信息&#xff0c;定位到具体的服务器和服务模块&#xff0c;构建一套集中式日志系统&#xff0c;可以提高 定位问题的效率…

构建自己的语音助手

在我最近发布关于如何构建自己的 RAG 并在本地运行它的帖子之后。今天&#xff0c;我们更进一步&#xff0c;不仅实现了大型语言模型的对话能力&#xff0c;还增加了听力和口语能力。这个想法很简单&#xff1a;我们将创建一个语音助手&#xff0c;让人想起标志性钢铁侠电影中的…

基于asp.net的办公协同管理系统源码分享

今天给大家分享一个asp.net开发的webform框架的办公协同管理系统源码SQLserver数据库 1.主要功能 这个项目是帮助一个学生指导的毕业设计&#xff0c;包含用户登陆、用户管理、车辆 管理、文件管理、个人中心、后台管理、文件上传、人事管理、系统日志等 等模块。2.开发工具及…

【Django-vue-admin学习笔记】页面自动计算日期差额的方法

在许多应用场景中,尤其是在管理系统中,经常需要对日期进行动态计算和展示,以帮助用户了解关键日期的即时状态。例如,在学生宿舍管理系统中,显示学生的退宿倒计时可以帮助管理人员有效监控即将到期的宿舍安排,并及时进行必要的调整。这样的功能不仅提高了管理效率,也增加…

H5接入企微JS-SDK,使用wx.previewFile进行文件预览

最近上项目&#xff0c;需求是做一个附件预览并且可以进行保存到手机、用其他应用打开的需求的需求&#xff0c;用企微的JS-SDK的wx.previewFile就可以满足以上的需求了 详细的可以参考&#xff1a;企业微信官方文档 前端 1、在项目的index.html中添加&#xff1a;jweixin-1.2…