RHEL8.9 静默安装Oracle19C

news2024/11/24 20:37:29

                RHEL8.9 静默安装Oracle19C

 
                                             甘肃圆角网络科技开发有限公司


说明(GUI):
 1.实际业务场景中,Linux环境一般情况下是没有GUI的。没有GUI并不意味着没有安装图形界面。可能在部署Linux操作系统环境的时候安装了桌面环境,只是启动的时候设置了启动级别,使之启动的时候默认为无界面启动。只有之后可能要用到GUI的时候启动使用;
 2.Linux具备GUI环境的便捷之处在于部分时候安装软件的时候便于操作,例如安装Oracle数据库的时候,如果具备GUI那么就和Windows安装类似,相对比较简单直接。但是这种模式安装的时候占用内存较多切不灵活。这里的灵活指的是(假设)如果同时在N台具备GUI桌面环境的Linux上面安装N次Oracle的时候就相对比较麻烦,人为参与的程度较深,工作量较大并且较为繁琐。并且占用的资源相对较多;
 3.是否具备图形界面和操作系统的安全度也会有关。图形界面例如Gnome,Kde等桌面环境可能会导致漏洞致使服务器安全度相对降低。同时具备GUI的Linux环境占用资源相对较多。当然并不是说具备GUI的Linux是不好的,因为很多业务场景中的确还是需要GUI作为支撑的。所以说是否具备GUI得要看实际的业务场景后选择是否安装。
 
说明(静默模式):
 1.静默模式并不是讲当你安装软件的时候所有的设置都是按照默认选项安装,就好比安装Windows中的某个软件的时候什么都不修改全部下一步直至完成。这个并不是所谓的静默安装。当然具体看个人如何理解,当然某种意义来讲这种模式也算是一种静默的安装方式;
 2.静默模式是值当你安装软件的时候首先是人为参与的工作较少,其次是多用于批量工作的业务场景。例如安装某个软件的时候只需要点一下安装,之后基本什么都不用管由软件自行安装直至结束。
 3.静默安装与传统下一步下一步点击安装最大的区别就是静默安装模式可以按照我们的需求自动化安装,并不是所有参数都是默认的,当然所有设置也可以全部默认。这一点需要区分开;
 4.所以静默模式安装的好处在于它可以按照我们实际业务场景所需要的参数将软件批量自动化安装。也就是我们经常所说的“可定制化”程度较高;
 5.只要是将修改好的相关文件拷贝到其他服务器,执行相关命令后就会按照这个文件写好的参数自动安装,这样的话就非常灵活及方便,而且批量安装的时候会更高效!


RHEL8.9安装Oracle19C(静默模式)
说明:
 1.Oracle静默安装中,其实最不好理解的就是静默安装所需要配置的文件中的各项参数值。其实他们并没有那么难搞并且是非常简单的;
 2.之所以觉得配置文件中的参数不知道如何设置,各种查阅资料后发现每个人参数都不太一样是因为Oracle安装的方式每个人都有各自的习惯,所以参数可能会不太一样;
 3.之所以书写本片博客最主要的一个因素是作者看了B站讲解Oracle静默安装以及网上各位博主编写该类资料后让人非常厌烦!一般情况下查阅这个主题资料的大神们或者编写该类主题的博客们要么是开发者要么是软件维护及实施人员或者是感兴趣的相关人员。可是编写Oracle静默模式安装的博客们并没有本着“知识分享”的崇尚精神,将最主要的地方(例如)配置文件的各项参数为什么这么配置不讲重点!甚至好多该类文章查阅读需要收费,真的让人非常无奈!所以作者本着让各位有所需求的读者能够明白“原来是这么回事”的目标,编写这篇博客;
 4.注意:本片博客最主要的目的不是安装Oracle,而是让读者们明白“Oracle静默模式安装原来是这么回事,原来这么简单!”其实各位有需求的伙伴们之所以不知道如何配置相关文件是因为没有在乎一些本质的东西,这些东西在图形界面安装Oracle的时候全部都有!所有参数配置在图形界面安装的时候也全部都有,只是没有注意到而已!好了,下面正式进入主题!

 
安装:
为了让读者更好的理解静默模式安装,先让各位看一下RHEL8.9图形界面下是如何安装的Oracle19C的。这样做的目的是为了掌握之后配置文件参数的原理。(注意:图形界面每个人安装方式可能有差异,所以最后的参数配置填写也有差异。但是不影响最终的结果!)图片中的各项参数仔细查看。

所需要的附件都在附件中,读者可以作为参考
CSDN附件下载默认收费,如需以下三个文件请发邮件:2568685665@qq.com或加本人QQ,必无偿奉献!

响应文件:db.rsp(图形界面安装时另存的文件)
响应文件:db_install.rsp (依据图形界面另存的响应文件修改后的文件)
响应文件:dbca.rsp (建库所需的响应文件)

1.第一步提示选择“创建和配置单个实例数据库还是仅设置软件”,我们这里选择创建和配置单个实例数据库

在这里插入图片描述
2.第二步提示选择安装企业版还是桌面版,我们选择企业版安装
在这里插入图片描述

3.第三步提示指定所有者安装的所有Oracle软件和配置相关文件的存放路径。这个位置是安装所有者的Oracle基目录。
在这里插入图片描述
4.第四步提示指定元数据文件及用户组
在这里插入图片描述

5.第五步提示该数据是用作与一般用途还是数据仓库,我们选择一般用途。
在这里插入图片描述

6.第六步提示全局变量名,SID名称以及是否创建为容器数据库及容器数据库名。我们选择创建
在这里插入图片描述
7.第七步
7.1
第七步有三个页签,第一个页签是否自动内存管理,如果没有设置自动内存管理就是系统默认的2061MB,我们这里不选择自动内存管理
在这里插入图片描述
7.2
第七步有三个页签,第二个页签是数据库的字符集,我们就选择默认的AL32UTF8即可
在这里插入图片描述
7.3
第七步有三个页签,第三个页签是提示可以选择在启动数据库中安装示例模式。人力资源模式将安装在启动器数据库中。在SYSAUX 表空间在数据库中安装示例模式。我们这里不启动
在这里插入图片描述

8.第八步提示存储数据的方式,第一种是文件存储,第二种是自动管理。我们选择的文件存储
在这里插入图片描述

9.第九步提示是否EM管理,我们选择不注册
在这里插入图片描述

10.第十步提示是否启用恢复,我们勾选启用并且选择选择文件恢复模式
在这里插入图片描述

11.第十一步提示各个角色的账号是分开管理还是统一管理,这里我们为了方便就统一管理
在这里插入图片描述
12.第十二步其实就是指定各类权限组
在这里插入图片描述
13.第十三步其实就是脚本运行是root还是平常用户,这里我们什么都不做

在这里插入图片描述

14.第十四步截图丢失了,但是第十四步骤非常关键。第十四步也是最后的一个步骤,出来的界面就是所有之前设置的参数。这个截图作者从百度随便找了一个各位先凑活看看。这个截图的右下角有一个“保存响应文件”,这个响应文件对应的就是各位不知道参数如何配置的db_install.rsp文件!他们是一模一样的!
在这里插入图片描述
现在各位读者明白我们一会要用到的db_install.rsp文件参数是如何填写对应参数了吧。其实图形化界面安装的时候,每一步中的参数只要设置正确后,最后一步中点击了“保存响应文件”后,这个文件就是对应的db_install.rsp文件,他们里面的内容是一模一样的!这就是在静默模式安装之前作者为什么要先讲解图形界面安装的作用!
Linux安装Oracle的时候,一般情况下都是先要增加好用户组及用后,然后创建位置后再安装。作者采用的全部是官方文档中路径。实际中路径可以按照个人需求设置。默认的各种用户组及路径设置完成后,采用图形界面安装的时候会自动检索到这些路径。这一点和Windows安装是有区别的。


*RHEL8.9使用静默模式安装Oracle19C
备注:安装前的各种准备这里就不做过多介绍,作者都是完全按照官方文档严格执行的。生产环境中可以按照实际需求修改即可。

1.建议使用Oracle支持的Linux发行版,详情参阅Oracle官网
在这里插入图片描述
2.修改shm大小,一般为系统内存的三分之二

# 查看shm大小和系统内存
[ttzo@Database ~]$ df -h
[ttzo@Database ~]$ free -h

在这里插入图片描述

# 打开fstab文件,修改shm大小,如下图中增加
# tmpfs                   /dev/shm                tmpfs   defaults,size=6144M       0 0
[root@Database ttzo]# vi /etc/fstab

在这里插入图片描述

# 查看是否增加成功
[ttzo@Database ~]$ cat /etc/fstab | grep shm

在这里插入图片描述

# 加载shm设置后并挂载,最后查看shm的大小是否修改成功
[root@Database ttzo]# systemctl daemon-reload
[root@Database ttzo]# mount -o remount /dev/shm
[root@Database ttzo]# df -h

在这里插入图片描述

3.安装所有所需组件

# Oracle支持不同的Linux发行版中所需的组件是不同的,这里严格按照官方文档执行
[root@Database ttzo]# dnf install  bc binutils elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libXrender libX11 libXau libXi libXtst libgcc libnsl librdmacm libstdc++ libstdc++-devel libxcb libibverbs make policycoreutils policycoreutils-python-utils smartmontools sysstat unixODBC gcc-c++

在这里插入图片描述

4.设置时间钟

# 先执行 cat /sys/devices/system/clocksource/clocksource0/current_clocksource查看是否为tsc,如果是的话这里就不需要修改了。否则建议修改!
cat /sys/devices/system/clocksource/clocksource0/available_clocksource
echo "tsc">/sys/devices/system/clocksource/clocksource0/current_clocksource
cat /sys/devices/system/clocksource/clocksource0/current_clocksource
GRUB_CMDLINE_LINUX="rd.lvm.lv=ol/root rd.lvm.lv=ol/swap rhgb quiet numa=off transparent_hugepage=never clocksource=tsc" 

在这里插入图片描述

5.配置内核参数和资源限制

# 严格按照官方文档执行,生产环境中按照实际需求修改大小
# 将以下内容添加到sysctl.conf最后
'
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
'

[root@Database ttzo]# vi /etc/sysctl.conf

在这里插入图片描述

# 加载并查看,这里最好重启一下服务器
[root@Database ttzo]# sysctl --system
/sbin/sysctl -a

在这里插入图片描述

6.Oracle 软件安装用户的资源限制

# 严格按照官方文档执行,生产环境中按照实际需求修改大小
# 先备份后修改,增加以下内容
'
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
'
[root@Database ttzo]# cp /etc/security/limits.conf /etc/security/limits.conf.bak
[root@Database ttzo]# vi /etc/security/limits.conf

在这里插入图片描述

7.权限组,用户,产品目录清单增加

# 查看本机是否有过安装,如果没有安装过Oracle,则提示文件不存在
[root@Database ttzo]# more /etc/oraInst.loc

在这里插入图片描述

# 创建用户组和用户oracle,并添加到相关组中
[root@Database ttzo]# /usr/sbin/groupadd -g 54321 oinstall
[root@Database ttzo]# /usr/sbin/groupadd -g 54327 asmdba
[root@Database ttzo]# /usr/sbin/groupadd -g 54328 asmoper
[root@Database ttzo]# /usr/sbin/groupadd -g 54322 dba
[root@Database ttzo]# groupadd -g 54323 oper
[root@Database ttzo]# /usr/sbin/groupadd -g 54324 backupdba
[root@Database ttzo]# /usr/sbin/groupadd -g 54325 dgdba
[root@Database ttzo]# /usr/sbin/groupadd -g 54326 kmdba
[root@Database ttzo]# /usr/sbin/groupadd -g 54330 racdba
[root@Database ttzo]# /usr/sbin/useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba oracle
[root@Database ttzo]# /usr/sbin/usermod -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper oracle

在这里插入图片描述

# 修改创建的新用户oracle的密码
[root@Database ttzo]# passwd oracle

在这里插入图片描述

8.创建目录并修改目录权限

[root@Database ttzo]# mkdir -p /u01/app/oracle
[root@Database ttzo]# mkdir -p /u01/app/oraInventory
[root@Database ttzo]# chown -R oracle:oinstall /u01/app/oracle
[root@Database ttzo]# chown -R oracle:oinstall /u01/app/oraInventory
[root@Database ttzo]# chmod -R 775 /u01/app

在这里插入图片描述

9.使用新创建的用户oracle创建相关目录

# 切换到用户oracle中执行一下命令
[root@Database ttzo]# su oracle
[oracle@Database ttzo]$ mkdir -p /u01/app/oracle/product/19.3.0/dbhome_1

在这里插入图片描述

10.拷贝Oracle19C安装包,解压

# 传输oracle安装包的时候,可以使用scp命令,也可以使用Xftp这样的工具
# win10及win11版本默认具备scp和ssh功能

在这里插入图片描述
在这里插入图片描述

# 安装zip
[root@Database dbhome_1]# dnf install zip

在这里插入图片描述

# 进入到oracle用户创建的目录中,将上传完成后的安装包进行解压
[oracle@Database ~]$ cd /u01/app/oracle/product/19.3.0/dbhome_1
[oracle@Database dbhome_1]$ unzip -q /home/oracle/Temp/LINUX.X64_193000_db_home.zip

在这里插入图片描述

11.修改hosts文件,否则之后的监听可能会启动失败或者可能会导致客户端工具连接不到Oracle服务
注意:计算机名中最好不要有特殊符号,作者之前的计算名是RHEL8.9,导致安装到百分之五十九准备建库的时候出现报错。最终修改计算机名后正常了。

[root@Database dbhome_1]# hostname
[root@Database dbhome_1]# ip addr
[oracle@Database dbhome_1]$ vim /etc/hosts

在这里插入图片描述
在这里插入图片描述

12.关键文件位置
这三个文件中,第一个文件中的参数决定了软件安装时的各种参数,就是上述中图形界面安装的时候每个界面中选择的参数!

软件:/u01/app/oracle/product/19.3.0/dbhome_1/install/response/db_install.rsp
监听:/u01/app/oracle/product/19.3.0/dbhome_1/assistants/netca/netca.rsp
建库:/u01/app/oracle/product/19.3.0/dbhome_1/assistants/dbca/dbca.rsp

13.修改db_install.rsp文件参数

# 修改前一定要先备份
[oracle@Database response]$ cp db_install.rsp db_install.rsp.bak

在这里插入图片描述

修改db_install.rsp文件。以下给读者放记账已经修改好的部分图示
至于如何修改,为什么要修改成这样,读者打开自己的配置文件就可以发现,配置文件中所有需要填写的参数就是图形界面安装的时候选择的各项参数。
作者是按照上述图形界面另存的db.rsp文件原封不动的修改了db_install.rsp文件。读者如果想要对照图形界面查看db.rsp文件以及作者修改好的db_install.rsp文件请看该博客附件!
需要注意的是,如果响应文件中各个用户的密码没有设置的话,是不允许的安装的。所以响应文件中的密码得要写上
不管是什么原因导致的安装前预警不让安装,如果重新安装的话都得要先提前删除/u01/app/oraInventory/目录中的文件及文件夹,否则安装的提示这个目录非空,导致无法静默安装!

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

14.静默安装

# 临时修改RHEL系统版本
# Oracle19C安装的时候提示环境检测问题是因为Oracle配置文件中写的支持的RHEL8.0版本,作者是RHEL8.9的版本
export CV_ASSUME_DISTID=RHEL8.0
# 安装
[oracle@Database dbhome_1]$ ./runInstaller -silent -responseFile /u01/app/oracle/product/19.3.0/dbhome_1/install/response/db_install.rsp

在这里插入图片描述

# 以root执行静默安装完成后的提示语句
[root@Database oraInventory]# sh /u01/app/oraInventory/orainstRoot.sh
[root@Database oraInventory]# /u01/app/oracle/product/19.3.0/dbhome_1/root.sh

在这里插入图片描述

15.配置环境变量

# 将以下内容添加到profile最末尾
'
export  ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1	
export  PATH=$PATH:/u01/app/oracle/product/19.3.0/dbhome_1/bin
export  ORACLE_SID=orcl
'
[root@Database oraInventory]# vim /etc/profile
# 使root用户变量生效
[root@Database oraInventory]# source /etc/profile
# 使oracle用户变量生效
[oracle@Database dbhome_1]$ source /etc/profile

在这里插入图片描述

16.监听配置

# 查看监听状态
[oracle@Database dbhome_1]$ lsnrctl status

在这里插入图片描述

# 以上监听状态反应结果是监听没有启动,尝试启动监听
[oracle@Database dbhome_1]$ lsnrctl start

在这里插入图片描述

# 再次查看监听服务状态
[oracle@Database dbhome_1]$ lsnrctl status

在这里插入图片描述

注意:以上结果就说明静默安装是成功的,监听也是正常的。但是执行到这里只是说明静默安装是完全成功的,我们下面需要做的就是创建新的监听。因为现在的监听只是启动成功了,但是没有listener.ora文件,这个是监听的文件!创建监听之前必须先停止现有的监听,否则会出现错误!

# 停止监听服务
[oracle@Database dbhome_1]$ lsnrctl stop

在这里插入图片描述

# 创建监听
[oracle@Database admin]$ netca -silent -responseFile /u01/app/oracle/product/19.3.0/dbhome_1/assistants/netca/netca.rsp

在这里插入图片描述

注意:执行上面命令后,监听文件就会出来,这是因为我们在db_install.rsp配置文件中已经设置了全局变量名和SID的缘故。如果配置文件中没有写也是可以的,那么这里就会创建新的监听。但是可能会存在端口不是默认的1521的情况。
我们可以看到下图中,listener.ora文件内容是正确的

在这里插入图片描述

[root@Database admin]# less /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.ora

在这里插入图片描述
修改监听文件,否则之后客户端很有可能会访问不了服务器Oracle数据库

# 向listener.ora监听文件新增以下内容
'
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = orcl)    
      (ORACLE_HOME = /u01/app/oracle/product/19.3.0/dbhome_1)
      (SID_NAME = orcl)
    )
  )
'
[root@Database admin]# vim /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.ora

在这里插入图片描述
17.创建数据库

创建数据库需要修改的响应文件是dbca.rsp。该文件作为本博客附件已上传,可以参考使用

# 修改响应文件,修改前备份文件
[oracle@Database admin]$ cd /u01/app/oracle/product/19.3.0/dbhome_1/assistants/dbca/
[oracle@Database dbca]$ cp dbca.rsp dbca.rsp.bak
# 使用响应文件创建数据库
[oracle@Database dbca]$ dbca -silent -createDatabase -responseFile /u01/app/oracle/product/19.3.0/dbhome_1/assistants/dbca/dbca.rsp

在这里插入图片描述

# 数据库创建成功后,重新启动监听服务
[oracle@Database dbca]$ lsnrctl stop
[oracle@Database dbca]$ lsnrctl start

18.连接数据库前各项检查及准备工作

# 登录数据库后查看数据库状态
# 如果数据库状态不是open,则输入startup尝试启动即可
[oracle@Database dbca]$ sqlplus / as sysdba

在这里插入图片描述

# 解锁system账户并重置密码
SQL> alter user system account unlock;

在这里插入图片描述

数据库解锁system用户的时候,发现出现乱码,所以现在需要修改相关字符集

# 查看服务器字符集
[root@Database ttzo]# echo $LANG 

在这里插入图片描述

# 查看数据库字符集
SQL> select userenv('language') from dual;

在这里插入图片描述

# 修改数据库字符集与服务器保持一致
SQL>SHUTDOWN IMMEDIATE;	#步骤1
SQL> STARTUP MOUNT;	#步骤2
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;	#步骤3
SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;	#步骤4
SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0;	#步骤5
SQL>ALTER DATABASE OPEN;	#步骤6
SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE UTF8;	#步骤7
SQL>SHUTDOWN IMMEDIATE;	#步骤8
SQL>STARTUP;	#步骤9
# 重新查看字符集
SQL> select userenv('language') from dual;

在这里插入图片描述

以上修改完成后,如果仍旧是乱码,则可以按以下方式解决:

# oracle用户执行,这个方法是临时生效的
[oracle@Database dbca]$ export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;

在这里插入图片描述

# 如果想要永久有效,打开oracle home目录下的.bash_profile文件,未尾加入以下内容即可:
[oracle@Database dbca]$ su - oracle
[oracle@Database dbca]$ vim .bash_profile
# 向.bash_profile文件最后添加
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;
# 使之立即生效
[oracle@Database dbca]$ source ~/.bashrc

在这里插入图片描述

# 重置system用户密码
SQL> alter user system identified by oracle_3301;
# 尝试切换登录(必须要确成功)
SQL> conn system/oracle_3301;
Connected.
SQL> 

在这里插入图片描述

# 开放Oracle数据库端口
[root@Database admin]# firewall-cmd --zone=public --add-port=1521/tcp --permanent
[root@Database admin]# firewall-cmd --reload
[root@Database admin]# firewall-cmd --zone=public --query-port=1521/tcp

在这里插入图片描述
检查服务器端口是否可以测通
在这里插入图片描述
在这里插入图片描述

端口测通后,可以使用客户端登录,不管是sqlplus命令还是图形界面客户端,只要能登录成功就说明Oracle数据库访问没有任何问题,建议随便执行一次脚本看输出结果是否正常
在这里插入图片描述

使用相关工具连接
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

Unity 一些常用注解

在Unity中有一些比较常用的注解: 1、[SerializeField]:将私有字段或属性显示在 Unity 编辑器中,使其可以在 Inspector 窗口中进行编辑。 2、[Range(min, max)]:限制数值字段或属性的范围,在 Inspector 窗口中以滑动条…

【SparkSQL】DataFrame入门(重点:df代码操作、数据清洗API、通过JDBC读写数据库)

【大家好,我是爱干饭的猿,本文重点介绍DataFrame的组成、DataFrame的代码构建、DataFrame的入门操作、词频统计案例、电影数据分析、SparkSQL Shuffle 分区数目、SparkSQL 数据清洗API、DataFrame数据写出、DataFrame 通过JDBC读写数据库(MyS…

linux 内核等待队列

等待队列在Linux内核中用来阻塞或唤醒一个进程,也可以用来同步对系统资源的访问,还可以实现延迟功能 在软件开发中任务经常由于某种条件没有得到满足而不得不进入睡眠状态,然后等待条件得到满足的时候再继续运行,进入运行状态。这…

虚拟数字人有什么用?有哪些应用场景?

​​过去三年,元宇宙概念进入到大众视野,虚拟数字人备受关注。抖音达人柳夜熙、洛天依、网红虚拟偶像AYAYI等,随着元宇宙的流行,数字人也逐渐成为一种趋势。据行业预测,到2030年,中国的数字人总市场规模将达…

全汉电源SN生产日期解读

新买了一个全汉的电脑电源,SN:WZ3191900030,看了几次没想明白,最后估计SN是2023年19周这样来记录日期的。问了一下京东全汉客服,果然就是这样的。那大家如果在闲鱼上看到全汉电源,就知道它的生产日期了。

Excel导入操作

<template><el-dialogwidth"500px"title"员工导入":visible"showExcelDialog"close"$emit(update:showExcelDialog, false)"><el-row type"flex" justify"center"><div class"upload-e…

Csharp(C#)无标题栏窗体拖动代码

C#&#xff08;C Sharp&#xff09;是一种现代、通用的编程语言&#xff0c;由微软公司在2000年推出。C#是一种对象导向的编程语言&#xff0c;它兼具C语言的高效性和Visual Basic语言的易学性。C#主要应用于Windows桌面应用程序、Windows服务、Web应用程序、游戏开发等领域。C…

使用vscode的remotessh插件远程连接的时候被要求重复输入密码

问题描述&#xff1a; 需要远程连接服务器&#xff0c;使用ssh&#xff0c;我用到的是vscode里面的remotessh插件。配置好config以后 HostHostNameUserPortIdentifyFile进入到了vscode的密码登录界面&#xff0c;但是一直被要求循环输入密码&#xff0c;很奇怪&#xff0c;去…

遭到美国做空机构“灰熊”做空后,人工智能公司商汤科技股价暴跌

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 猛兽财经获悉&#xff0c;在遭到美国做空机构Grizzly Research&#xff08;灰熊&#xff09;指控夸大收入后&#xff0c;商汤科技的股价在周二一度下跌了9.7%。 Grizzly Research在周二发布的一份报告中称&#xff0c;商汤…

分享5款靠谱好用,无广告不流氓的好软件

​ 话不多说&#xff0c;直入正题&#xff0c;全都是靠谱好用&#xff0c;无广告不流氓的好软件&#xff0c;可以先点赞收藏&#xff0c;以后慢慢用。 1.动态壁纸软件——Lively Wallpaper ​ Lively Wallpaper是一款可以将视频、GIF、网页、游戏等内容作为桌面壁纸的软件&am…

对抗产品团队中的认知偏误:给产品经理的专家建议

今天的产品经理面临着独特的挑战。他们不仅需要设计和构建创新功能&#xff0c;还必须了解这些功能将如何为客户带来价值并推进关键业务目标。如果不加以控制&#xff0c;认知偏差可能会导致您构建的内容与客户想要的内容或业务需求之间不一致。本文将详细阐述产品经理可以避免…

融合抖音生态:抖音核销工具小程序开发全指南

为了更好地与抖音生态融合&#xff0c;许多开发者开始关注抖音核销工具小程序的开发。本文将为您提供一份详尽的指南&#xff0c;帮助您了解如何开发一个完善的抖音核销工具小程序。 第一步&#xff1a;理解抖音生态 抖音提供了一系列开发者工具和API&#xff0c;包括用户授权…

上市公司数字化转型及同群效应数据集合(四种测算方法)

数据简介&#xff1a;当今世界处于高速发展的信息时代中&#xff0c;数字革命的产生催生出大量数字技术和数字信息。在数字经济时代&#xff0c;数字化转型赋予了企业新的发展动能&#xff0c;数字化转型已经成为诸多企业高质量发展的重要路径。是否需要进行数字化转型、能否及…

Serilog .net下的新兴的日志框架

Serilog .net下的新兴的日志框架 1.Serilog简介 Serilog 是针对 .NET 应用程序的流行日志记录框架。它以其灵活性、易用性和可扩展性而闻名。借助 Serilog&#xff0c;开发人员可以轻松记录应用程序中的事件、错误和消息。它支持结构化日志记录&#xff0c;能够以结构化格式存…

SpringBoot整合validation数据校验

1. 首先引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId></dependency> 点标识进去可以发现是通过Hibernate Validator使用 Java Bean Validation 2. 属性上…

中伟视界:AI盒子中的报警预录像功能能解决什么问题?实现原理是怎样的?

现代社会智能安防已成为各行各业的重要一环&#xff0c;而AI盒子中的报警预录像功能更是智能安防的一大利器。这一功能能够解决很多安防方面的难题&#xff0c;其实现原理更是技术创新的体现。 首先&#xff0c;让我们来看看AI盒子中的报警预录像功能能解决哪些问题。在传统的安…

基于PHP的校园兼职系统的设计与开发

基于PHP的校园兼职系统的设计与开发 摘要&#xff1a;从古代至今&#xff0c;教育都是国家培养人才的手段&#xff0c;在古代教育往往都是课堂式教育&#xff0c;在课堂内老师教导学生学习&#xff0c;而随着时间的推移&#xff0c;越来越多的在校大学生已经不满足于只在课堂上…

dapper+mysql查询报Error parsing column 0 (Id=<null>)

之前的分页接口都是正常的&#xff0c;突然就报错了Error parsing column 0 (Id<null>) {"error": {"code": null,"message": "Error parsing column 0 (Id<null>)","details": "DataException: Error pa…

vue.js ——Vuex

基本概念 vue进行开发过程中有没有遇到这样一种场景&#xff0c;就是有些时候一些数据是一种通用的共享数据&#xff08;比如登录信息&#xff09;&#xff0c;那么这类数据在各个组件模块中可能都会用到&#xff0c;如果每个组件中都去后台重新获取那么势必会造成性能浪费&am…

R语言30分钟入门

1. 环境&安装 R是支持win、linux合macos的 完整参考&#xff1a;https://zhuanlan.zhihu.com/p/596324321?utm_id0 主要是安装&#xff1a;1、R环境&#xff1b;2、rstudio开发环境&#xff08;后面主要是用rstudio&#xff0c;也可以用vscode&#xff09; 1.1. rstud…