- linux环境安装达梦数据库
一只小菜鸟啊
数据库linux数据库运维
linux环境安装达梦数据库1安装前准备:1.1安装包准备提前下载达梦的iso安装包下载地址:https://eco.dameng.com/download/1.2新建dmdba用户创建用户组:groupadddinstall创建用户,命令如下:useradd-gdinstalldmdba创建达梦数据库安装目录mkdir-p/dm8/{dminstall,dmdata,dmarch,dabak}将
- 如何下载并安装 Windows Subsystem for Linux (WSL)
在当今的开发环境中,WindowsSubsystemforLinux(WSL)已经成为许多开发者的必备工具。它允许用户在Windows系统上无缝运行Linux发行版,结合了Windows的强大功能和Linux的灵活性。本文将详细介绍如何下载和安装WSL,帮助你快速上手。一、什么是WSLWSL是微软推出的一项功能,允许用户在Windows操作系统上运行Linux二进制可执行文件。它提供了对Linux
- 笔记本安装linux系统_“老笔记本”操作系统的安装
彭英韬
笔记本安装linux系统
现在科技发展电脑更新速度很很,有很多人已经换了几台电脑了。一是工作需要电脑满足不了需求;二是经济条件好经常更换满足心里需求;三是只会使用电脑不会维修,修不好就换等情况。现在电脑出现问题比较多的操作系统,由于经常上网有一些软件自动就安装了,使用一段时间电脑速度就慢了,有时自己清理电脑就出现进不了系统。还有时候安装自己需要系统时,由于不匹配等因素,导致电脑死机或出现蓝屏现象。虽然上网关系系统安装的软件
- Vmware-RabbitMQ安装
菜逼の世界
VMwareVmwareRabbitMQ
RabbitMQ操作系统:CentOS7.9更新系统更新你的系统包列表和已安装的包。yumupdate安装EPEL仓库(若需要)RabbitMQ的某些依赖包可能不在默认的CentOS/RHELYUM仓库中,因此你可能需要安装EPEL(ExtraPackagesforEnterpriseLinux)仓库。[root@test-2~]#yuminstallepel-release已加载插件:faste
- 在LINUX下使用模拟器运行Android
renjin252252252
linuxandroidpathx86c
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://glizardy.blogbus.com/logs/42812304.html1到http://developer.android.com/sdk/1.5_r3/index.html下载Linux(i386)android-sdk-linux_x86-1.5_r3.zip178117561bytes350d0211678
- Ubuntu/Linux运行安卓全攻略
海洋月亮
ubuntulinuxandroiddockerscrapy
Ubuntu中使用scrcpy进行Android投屏,当我们手头没开发板没有屏幕的时候,就可以借助ADB和scrcpy进行投屏,很方便:A.这里展示如何在Ubuntu中使用scrcpy+adb+docker方案运行手机Android系统B.使用的模拟器方案基于redroid,能够非常简单方便地在任何Linux上运行Android模拟器C.测试环境:Ubuntu24.04D.需要用到的工具:scrc
- Linux 系统运行 Android 应用的几种方案
云水木石
linuxandroid运维服务器
这几年,国产操作系统替代正在有条不紊地进行中。但生态是绕不过去的一道坎,指望应用厂商一下子完成国产系统适配也不现实。之前介绍过使用Wine运行Windows应用的方案,减少了国产系统应用偏少的难题。比如我在办公室使用最多的企业微信,一直没有开发Linux版本,就是通过Wine运行的。除了Windows应用,还有新的目标,那就是手机应用。这些年移动互联网蓬勃发展,手机app从数量上已经远远超过桌面应
- ubuntu/centos环境下玩android系统(二): linux下的android模拟器运行!
刀客777
linux开发androidlinuxpathswtlistjava
上一篇完成了Android的编译,想必一定心里痒痒了!这一篇将开始玩转android模拟器!如果不喜欢在linux下运行emulator,可直接看第三篇,第三篇讲述windows下的模拟器,相对linux下,要简单很多!一.下载AndoirdSDK,这次我选择的是android-sdk_r15-linux.tgz安装很简单,直接解压到opt目录下!最好配制一下PATH,以便运行时不用设置PATH环
- Linux操作系统笔记3
wu2790
笔记
接口管理命令:ip命令字符终端nmcli命令字符终端nmtui命令可视化终端ip命令:使用ip命令可以配置临时网络的连接信息,相关命令如下:iplink:显示网络设备运行状态ip-slink:显示更详细的设备信息iplinkshow[网络设备名]:仅显示指定的网络设备名的信息iplinkshowup:仅显示当前处于激活状态的设备信息iplinkset[网络设备名]down:将指定的网络设备下线ip
- linux操作系统笔记1
wu2790
linux笔记服务器
基本命令格式[redhat@localhost~]$$:使用的shell,$表示普通用户,#表示root(管理员)用户redhat:表示当前登录的用户,su(-)切换用户,whoami查看当前登录的用户localhost:表示主机名称,hostname查看主机名称,还可以临时修改(hostname英文名称),永久修改(hostnamectlset-hostname英文名称)~:表示当前的工作目录,
- linux下的libpng下载,编译,安装,配置等,
wushuang443
libpng
libpng的使用|在Linux系统下编译、安装与使用_1234567890@world的博客-CSDN博客
- Linux 虚拟机里面系统自动校准时间,
wushuang443
linux
首先查看下系统时间:输入date或者timedatectlstatus查看时间信息先启用NTP(网络时间协议)timedatectlset-ntptrue1现在发现日期对上了,但是准确的时钟分钟没对上,输入:这点时区的设置很重要timedatectlset-timezone"Asia/Shanghai"1修改时区为上海注意:若提示权限不足可以加上sudo提权或者使用root账户
- 傻瓜式安装QT+ROS2+Ubuntu22环境(可直接在pro中使用)
牛顶顶大王
Rosqt开发语言性能优化
结果展示QT版本的订阅者实例/官网的发布者实例1.安装qt我使用的版本5.14.2下载地址现在qt下载无法访问了,需要0.0下载qt-opensource-linux-x64-5.14.2.run直接运行其他环境的安装sudoaptinstallgccsudoaptinstallg++sudoaptinstallclangsudoaptinstallclang++sudoaptinstallmak
- Selenium使用指南
点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快Selenium是网页应用中最流行的自动化测试工具,可以用来做自动化测试或者浏览器爬虫等。官网地址为:相对于另外一款web自动化测试工具QTP来说有如下优点:免费开源轻量级,不同语言只需要一个体积很小的依赖包支持多种系统,包括Windows,Mac,Linux支持多种浏览器,包括Chrome,FireFox,IE,safari,opera
- Linux (Ubuntu) conda:未找到命令报错处理
司南锤
cs基础linuxlinuxubuntuconda
检查安装路径:确认Anaconda或Miniconda是否已经安装。通常,安装路径在用户主目录下,例如~/anaconda3或~/miniconda3。添加路径到环境变量:如果知道Anaconda或Miniconda的安装路径,可以手动将路径添加到环境变量中。例如,如果安装路径是~/anaconda3,可以在终端中输入以下命令:exportPATH=~/anaconda3/bin:$PATH为了使
- 【Linux】Linux常用命令
韩悸桉
服务器linux服务器运维
一、cd:切换目录(Changedirectory)1.1cd~和cd:返回用户目录[root@izwz94jtz9hbdq165vpxpxzapp1]#cd~[root@izwz94jtz9hbdq165vpxpxz~]#[root@izwz94jtz9hbdq165vpxpxzapp1]#cd[root@izwz94jtz9hbdq165vpxpxz~]#1.2cd.:停留在当前目录[root
- X86和ARM架构的优缺点?
心对元&鑫鑫
arm开发架构
x86和ARM是当前主流的两种处理器架构,分别主导不同领域(如PC/服务器和移动/嵌入式设备)。它们的优缺点对比如下:1.x86架构(Intel/AMD)优点:高性能:复杂指令集(CISC)设计,单条指令功能强大,适合高吞吐量计算。强大的单线程性能,尤其在浮点运算和多媒体处理(如视频编辑、游戏)。软件生态成熟:主导PC和服务器市场,兼容Windows、Linux等主流操作系统。支持大量专业软件(如
- uptime命令详解
半桶水专家
运维linux网络
uptime是Linux/Unix系统中的一个非常常用的命令,用于显示系统的运行时间、当前时间、登录用户数以及系统负载(loadaverage)。下面是对uptime命令的详细解释。一、基本语法uptime[参数]常用参数:参数说明无显示当前时间、系统运行时间、用户数、平均负载-p只显示系统已运行的时间(pretty格式)-s显示系统最近的启动时间(since)-h显示帮助信息二、命令输出详解示例
- springboot打包部署到linux后中文乱码
pleasecallmeTen
java编程springboot
如果已经排除了linux服务器上中文编码的问题,仍然显示乱码,可以考虑是否是打包的问题。解决方式:在pom文件中添加以下配置:UTF-8UTF-81.8重新打包部署。
- 【模型部署】如何在Linux中通过脚本文件部署模型
满怀1015
人工智能linux网络人工只能模型部署
在Linux中,你可以将部署命令保存为可执行脚本文件,并通过终端直接调用。以下是几种常见且实用的方法:方法1:Shell脚本(推荐)步骤创建一个.sh文件(例如start_vllm.sh):#!/bin/bashCUDA_VISIBLE_DEVICES=7\python-mvllm.entrypoints.openai.api_server\--served-model-nameQwen2-7B-
- Linux下载Google Chrome
OKay_J
linuxchrome经验分享笔记
不同发行版上安装GoogleChrome在Ubuntu、Debian和LinuxMint上安装在RedHat、CentOS和Fedora上安装在ArchLinux和Manjaro上安装首先更新安装包sudoapt-getupdate在Ubuntu、Debian和LinuxMint上安装输入以下命令wgethttps://dl.google.com/linux/direct/google-chrom
- WSL快速在Ubuntu或者Debian安装golang、python、deno、nodejs、java前后端全栈一体化开发环境配置
怪我冷i
云原生ubuntudebiangolangAI写作AI编程
安装golang#移除旧版本(如有)sudoaptremove--autoremove-ygolang#下载最新版(替换为官网最新版本号)wgethttps://go.dev/dl/go1.24.4.linux-amd64.tar.gz#解压到/usr/localsudorm-rf/usr/local/gosudotar-C/usr/local-xzfgo1.24.4.linux-amd64.ta
- Git安装前的准备工作及避坑指南
zzywxc787
开发语言人工智能大数据
一、安装前的准备工作检查系统环境Windows:建议使用Windows10/11,64位系统。macOS:确保系统版本≥10.15(Catalina)。Linux:推荐Ubuntu20.04+、Debian10+或CentOS7+。卸载旧版本安装前删除旧版Git:bash#Linux/macOSsudoapt-getremovegit#Debian/Ubuntusudoyumremovegit#C
- 【Linux】写时拷贝——干货解析
代码程序猿RIP
Linuxlinux运维服务器
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、写时拷贝核心概念1.什么是写时拷贝?2.COW解决的问题二、写时拷贝工作原理1.内存管理基础结构2.COW工作流程3.页表状态变化图示初始状态(共享只读)子进程写入后(写时拷贝)三、写时拷贝的优势分析1.性能优势对比2.实际性能数据3.资源利用率提升四、内核实现深度解析1.COW核心代码逻辑2.关键数据结构五、应用场景与最
- 【Linux】环境变量——干货讲解
代码程序猿RIP
Linuxlinux
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、环境变量核心概念1.什么是环境变量?2.环境变量的存储结构3.常见环境变量及作用二、环境变量管理命令1.查看环境变量2.设置环境变量3.删除环境变量4.变量操作技巧三、环境变量在编程中的应用1.C语言获取环境变量的三种方式方法1:main函数参数方法2:extern声明environ方法3:getenv获取特定变量2.环境
- 与客服关于博文收益的对话记录
brooknew
平台规则
我的聊天记录我2025-07-0210:00:58使用qemu运行Linux5.10.168原创高质量VIP文章2025-07-0116:34:49240317016Linux内核GPIO子系统gpioio原创高质量2025-06-1915:57:0239683716111揭秘devres接口:功能深入介原创高质量VIP文章2025-06-1809:05:537070614014我的好几篇博客阅读
- 【jetson】Linux下nvidia Jetson烤机程序(CPU+GPU)
前言烤机程序用于把设备的使用率拉满,进行可靠性测试。这里主要贴一下cpu和gpu的烤机程序。cpu为arm64,gpu是orinnano的模组。烤机的jetson设备为如下,输入54v:reComputerMiniJ3011-IntelligentEdgeAIComputerwithNVIDIA®Jetson™Orin™Nano8GBCPU-burn终端安装测试工具:sudoaptinstalls
- pwn手记录题3
前言:研究生的生活很充实(忙,大概三年我再也没有时间去认真做题了以下是最近比赛的遇到的题目。仅记录脚本,细节不会再核实了(没时间(;´༎ຶД༎ຶ`))可能以后不太会触碰CTF比赛了强网杯-baby_heapfrompwnimport*context(os='linux',arch='amd64',log_level='debug')binary='./pwn'r=process(binary)el
- 数据结构day6——内核链表
LZA185
数据结构数据结构链表
在Linux内核开发中,链表是最基础且重要的数据结构之一。与普通链表不同,Linux内核采用了一种非常巧妙的"通用链表"设计,它不直接包含数据,而是将数据结构嵌入其中,从而实现了一种高度灵活、可复用的链表机制。本文将深入解析Linux内核链表的设计思想、实现原理及应用场景。一、传统链表的局限性传统链表的实现方式通常是将数据直接包含在节点结构中://传统链表节点结构typedefstructStud
- 【实时Linux实战系列】实时Linux项目的部署与维护
在实时Linux项目的开发过程中,开发阶段的工作仅仅是开始,生产环境中的部署与维护同样至关重要。实时Linux系统广泛应用于工业自动化、航空航天、智能交通等对实时性和稳定性要求极高的领域。例如,在工业自动化中,实时系统的部署可能涉及复杂的硬件配置和多节点的协同工作;在智能交通系统中,系统的长期稳定运行需要定期维护和及时更新。掌握实时Linux项目的部署与维护技能,对于开发者而言,不仅能够确保系统顺
- PHP,安卓,UI,java,linux视频教程合集
cocos2d-x小菜
javaUIPHPandroidlinux
╔-----------------------------------╗┆
- 各表中的列名必须唯一。在表 'dbo.XXX' 中多次指定了列名 'XXX'。
bozch
.net.net mvc
在.net mvc5中,在执行某一操作的时候,出现了如下错误:
各表中的列名必须唯一。在表 'dbo.XXX' 中多次指定了列名 'XXX'。
经查询当前的操作与错误内容无关,经过对错误信息的排查发现,事故出现在数据库迁移上。
回想过去: 在迁移之前已经对数据库进行了添加字段操作,再次进行迁移插入XXX字段的时候,就会提示如上错误。
&
- Java 对象大小的计算
e200702084
java
Java对象的大小
如何计算一个对象的大小呢?
 
- Mybatis Spring
171815164
mybatis
ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
CustomerService userService = (CustomerService) ac.getBean("customerService");
Customer cust
- JVM 不稳定参数
g21121
jvm
-XX 参数被称为不稳定参数,之所以这么叫是因为此类参数的设置很容易引起JVM 性能上的差异,使JVM 存在极大的不稳定性。当然这是在非合理设置的前提下,如果此类参数设置合理讲大大提高JVM 的性能及稳定性。 可以说“不稳定参数”
- 用户自动登录网站
永夜-极光
用户
1.目标:实现用户登录后,再次登录就自动登录,无需用户名和密码
2.思路:将用户的信息保存为cookie
每次用户访问网站,通过filter拦截所有请求,在filter中读取所有的cookie,如果找到了保存登录信息的cookie,那么在cookie中读取登录信息,然后直接
- centos7 安装后失去win7的引导记录
程序员是怎么炼成的
操作系统
1.使用root身份(必须)打开 /boot/grub2/grub.cfg 2.找到 ### BEGIN /etc/grub.d/30_os-prober ### 在后面添加 menuentry "Windows 7 (loader) (on /dev/sda1)" { 
- Oracle 10g 官方中文安装帮助文档以及Oracle官方中文教程文档下载
aijuans
oracle
Oracle 10g 官方中文安装帮助文档下载:http://download.csdn.net/tag/Oracle%E4%B8%AD%E6%96%87API%EF%BC%8COracle%E4%B8%AD%E6%96%87%E6%96%87%E6%A1%A3%EF%BC%8Coracle%E5%AD%A6%E4%B9%A0%E6%96%87%E6%A1%A3 Oracle 10g 官方中文教程
- JavaEE开源快速开发平台G4Studio_V3.2发布了
無為子
AOPoraclemysqljavaeeG4Studio
我非常高兴地宣布,今天我们最新的JavaEE开源快速开发平台G4Studio_V3.2版本已经正式发布。大家可以通过如下地址下载。
访问G4Studio网站
http://www.g4it.org
G4Studio_V3.2版本变更日志
功能新增
(1).新增了系统右下角滑出提示窗口功能。
(2).新增了文件资源的Zip压缩和解压缩
- Oracle常用的单行函数应用技巧总结
百合不是茶
日期函数转换函数(核心)数字函数通用函数(核心)字符函数
单行函数; 字符函数,数字函数,日期函数,转换函数(核心),通用函数(核心)
一:字符函数:
.UPPER(字符串) 将字符串转为大写
.LOWER (字符串) 将字符串转为小写
.INITCAP(字符串) 将首字母大写
.LENGTH (字符串) 字符串的长度
.REPLACE(字符串,'A','_') 将字符串字符A转换成_
- Mockito异常测试实例
bijian1013
java单元测试mockito
Mockito异常测试实例:
package com.bijian.study;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import org.junit.Assert;
import org.junit.Test;
import org.mockito.
- GA与量子恒道统计
Bill_chen
JavaScript浏览器百度Google防火墙
前一阵子,统计**网址时,Google Analytics(GA) 和量子恒道统计(也称量子统计),数据有较大的偏差,仔细找相关资料研究了下,总结如下:
为何GA和量子网站统计(量子统计前身为雅虎统计)结果不同?
首先:没有一种网站统计工具能保证百分之百的准确出现该问题可能有以下几个原因:(1)不同的统计分析系统的算法机制不同;(2)统计代码放置的位置和前后
- 【Linux命令三】Top命令
bit1129
linux命令
Linux的Top命令类似于Windows的任务管理器,可以查看当前系统的运行情况,包括CPU、内存的使用情况等。如下是一个Top命令的执行结果:
top - 21:22:04 up 1 day, 23:49, 1 user, load average: 1.10, 1.66, 1.99
Tasks: 202 total, 4 running, 198 sl
- spring四种依赖注入方式
白糖_
spring
平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程序员实例化,而是通过spring容器帮我们new指定实例并且将实例注入到需要该对象的类中。依赖注入的另一种说法是“控制反转”,通俗的理解是:平常我们new一个实例,这个实例的控制权是我
- angular.injector
boyitech
AngularJSAngularJS API
angular.injector
描述: 创建一个injector对象, 调用injector对象的方法可以获得angular的service, 或者用来做依赖注入. 使用方法: angular.injector(modules, [strictDi]) 参数详解: Param Type Details mod
- java-同步访问一个数组Integer[10],生产者不断地往数组放入整数1000,数组满时等待;消费者不断地将数组里面的数置零,数组空时等待
bylijinnan
Integer
public class PC {
/**
* 题目:生产者-消费者。
* 同步访问一个数组Integer[10],生产者不断地往数组放入整数1000,数组满时等待;消费者不断地将数组里面的数置零,数组空时等待。
*/
private static final Integer[] val=new Integer[10];
private static
- 使用Struts2.2.1配置
Chen.H
apachespringWebxmlstruts
Struts2.2.1 需要如下 jar包: commons-fileupload-1.2.1.jar commons-io-1.3.2.jar commons-logging-1.0.4.jar freemarker-2.3.16.jar javassist-3.7.ga.jar ognl-3.0.jar spring.jar
struts2-core-2.2.1.jar struts2-sp
- [职业与教育]青春之歌
comsci
教育
每个人都有自己的青春之歌............但是我要说的却不是青春...
大家如果在自己的职业生涯没有给自己以后创业留一点点机会,仅仅凭学历和人脉关系,是难以在竞争激烈的市场中生存下去的....
&nbs
- oracle连接(join)中使用using关键字
daizj
JOINoraclesqlusing
在oracle连接(join)中使用using关键字
34. View the Exhibit and examine the structure of the ORDERS and ORDER_ITEMS tables.
Evaluate the following SQL statement:
SELECT oi.order_id, product_id, order_date
FRO
- NIO示例
daysinsun
nio
NIO服务端代码:
public class NIOServer {
private Selector selector;
public void startServer(int port) throws IOException {
ServerSocketChannel serverChannel = ServerSocketChannel.open(
- C语言学习homework1
dcj3sjt126com
chomework
0、 课堂练习做完
1、使用sizeof计算出你所知道的所有的类型占用的空间。
int x;
sizeof(x);
sizeof(int);
# include <stdio.h>
int main(void)
{
int x1;
char x2;
double x3;
float x4;
printf(&quo
- select in order by , mysql排序
dcj3sjt126com
mysql
If i select like this:
SELECT id FROM users WHERE id IN(3,4,8,1);
This by default will select users in this order
1,3,4,8,
I would like to select them in the same order that i put IN() values so:
- 页面校验-新建项目
fanxiaolong
页面校验
$(document).ready(
function() {
var flag = true;
$('#changeform').submit(function() {
var projectScValNull = true;
var s ="";
var parent_id = $("#parent_id").v
- Ehcache(02)——ehcache.xml简介
234390216
ehcacheehcache.xml简介
ehcache.xml简介
ehcache.xml文件是用来定义Ehcache的配置信息的,更准确的来说它是定义CacheManager的配置信息的。根据之前我们在《Ehcache简介》一文中对CacheManager的介绍我们知道一切Ehcache的应用都是从CacheManager开始的。在不指定配置信
- junit 4.11中三个新功能
jackyrong
java
junit 4.11中两个新增的功能,首先是注解中可以参数化,比如
import static org.junit.Assert.assertEquals;
import java.util.Arrays;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runn
- 国外程序员爱用苹果Mac电脑的10大理由
php教程分享
windowsPHPunixMicrosoftperl
Mac 在国外很受欢迎,尤其是在 设计/web开发/IT 人员圈子里。普通用户喜欢 Mac 可以理解,毕竟 Mac 设计美观,简单好用,没有病毒。那么为什么专业人士也对 Mac 情有独钟呢?从个人使用经验来看我想有下面几个原因:
1、Mac OS X 是基于 Unix 的
这一点太重要了,尤其是对开发人员,至少对于我来说很重要,这意味着Unix 下一堆好用的工具都可以随手捡到。如果你是个 wi
- 位运算、异或的实际应用
wenjinglian
位运算
一. 位操作基础,用一张表描述位操作符的应用规则并详细解释。
二. 常用位操作小技巧,有判断奇偶、交换两数、变换符号、求绝对值。
三. 位操作与空间压缩,针对筛素数进行空间压缩。
&n
- weblogic部署项目出现的一些问题(持续补充中……)
Everyday都不同
weblogic部署失败
好吧,weblogic的问题确实……
问题一:
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component class: URL [zip:E:/weblogic/user_projects/domains/base_domain/serve
- tomcat7性能调优(01)
toknowme
tomcat7
Tomcat优化: 1、最大连接数最大线程等设置
<Connector port="8082" protocol="HTTP/1.1"
useBodyEncodingForURI="t
- PO VO DAO DTO BO TO概念与区别
xp9802
javaDAO设计模式bean领域模型
O/R Mapping 是 Object Relational Mapping(对象关系映射)的缩写。通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据。在O/R Mapping的世界里,有两个基本的也是重要的东东需要了解,即VO,PO。
它们的关系应该是相互独立的,一个VO可以只是PO的部分,也可以是多个PO构成,同样也可以等同于一个PO(指的是他们的属性)。这样,PO独立出来,数据持