问题列表 - 第16056页

原子文件保存在Linux上而不会丢失元数据

我正在研究基于Perl的文件同步工具.它将文件下载到临时目录(保证与真实文件位于同一文件系统上),然后将临时文件移动到旧文件系统上,保留权限,所有权和ACL等元数据.我想知道如何在Linux上实现最后一步.

在Mac OS X上,至少在C中,我会使用该exchangedata功能.这需要两个文件名作为参数并交换其内容,使所有元数据(除了mtime)保持不变.它保证操作是原子的 - 所有读者都会看到旧文件或新文件,从不介于两者之间.不幸的是,我不认为它可以在Linux上使用.

我知道它rename会以原子方式移动,但它不会保留元数据.另一方面,我可以打开文件并使用新文件的内容覆盖数据,这将保留所有元数据,但不会是原子操作.有关解决这个问题的任何建议吗?

linux macos perl file atomic

8
推荐指数
1
解决办法
1037
查看次数

如何保护数据库?

有一个带有服务器数据库的网站.我正在构建一个桌面应用程序,它使用其中一个表中的数据.黑客可以从汇编中获取密码.

我该如何保护数据库?

database security database-design

3
推荐指数
1
解决办法
236
查看次数

C++:按值传递变量

情况就是这样:

int f(int a){
    ...
    g(a);
    ...
}

void g(int a){...}
Run Code Online (Sandbox Code Playgroud)

问题是编译器说没有匹配函数来调用g(int&).它希望我通过引用传递变量,g()按值接收参数.

我怎么解决这个问题?

c++

0
推荐指数
1
解决办法
210
查看次数

优化MySQL查询

我们有一个查询当前正在查杀我们的数据库,我知道必须有一种方法来优化它.我们有3个表:

  1. items - 项目表,其中每个项目都有关联的object_id,length,difficulty_rating,rating,avg_rating和status
  2. lists - 列表,基本上是我们用户创建的项目列表
  3. list_items - 包含2列的表:list_id,item_id

我们一直在使用以下查询来显示一个简单的HTML表,该表显示每个列表以及与列表相关的一些属性,包括所包含列表项的属性的平均值:

select object_id, user_id, slug, title, description, items, 
       city, state, country, created, updated,
       (select AVG(rating) from items
          where object_id IN 
              (select object_id from list_items where list_id=lists.object_id) 
            AND status="A"
       ) as 'avg_rating',
       (select AVG(avg_rating) from items
          where object_id IN 
              (select object_id from list_items where list_id=lists.object_id) 
            AND status="A"
       ) as 'avg_avg_rating',
       (select AVG(length) from items 
          where object_id IN 
              (select object_id from list_items where list_id=lists.object_id) 
            AND status="A"
       ) as 'avg_length',
       (select AVG(difficulty_rating) from …
Run Code Online (Sandbox Code Playgroud)

mysql optimization query-optimization

1
推荐指数
1
解决办法
242
查看次数

所有mysql引擎之间的主要区别是什么?

我想总结一下所有Mysql引擎之间的主要区别,当然也是最流行的.

我应该使用什么标准来确定使用哪种引擎?

mysql

7
推荐指数
1
解决办法
4001
查看次数

在MySQL中创建域

请帮我在MySQL中创建域名.我试图在MySQL中运行followoing语句但是语法错误:

create domain age as int(2); 
Run Code Online (Sandbox Code Playgroud)

mysql

11
推荐指数
1
解决办法
2万
查看次数

Delphi有快速的GetToken例程吗?

在我的程序中,我处理了数百万个具有特殊字符的字符串,例如"|" 分隔每个字符串中的标记.我有一个返回第n个令牌的函数,就是这样:

function GetTok(const Line: string; const Delim: string; const TokenNum: Byte): string;
{ LK Feb 12, 2007 - This function has been optimized as best as possible }
var
 I, P, P2: integer;
begin
  P2 := Pos(Delim, Line);
  if TokenNum = 1 then begin
    if P2 = 0 then
      Result := Line
    else
      Result := copy(Line, 1, P2-1);
  end
  else begin
    P := 0; { To prevent warnings }
    for I := 2 to TokenNum do begin
      P := …
Run Code Online (Sandbox Code Playgroud)

delphi optimization parsing token aqtime

21
推荐指数
3
解决办法
4086
查看次数

将Windows域身份验证与外部网站集成

我是一个小型的Internet托管应用程序(SAAS)开发人员,当我启动时,我希望大多数客户将使用标准的电子邮件+密码技术对我的应用程序进行身份验证(登录)。

但是,我想为拥有现成系统潜在用户社区的较大客户提供更好的单点登录选项。这样的社区通常将运行已通过内部公司Windows域控制器进行身份验证的Windows桌面。

我正在寻找增强我的网站用户身份验证过程并信任或委托给客户的域身份验证的选项。在这种集成中,我将是初级合作伙伴,因此,我怀疑一家大型公司是否将允许我运行连接到其系统的卫星域控制器。SAAS应用程序的经济性不允许使用硬件VPN电路。

如果这有助于阐明选项,则可能会使用Azure云来托管我的SAAS应用程序。

openid saas windows-authentication

5
推荐指数
1
解决办法
2329
查看次数

-1
推荐指数
3
解决办法
9593
查看次数

为什么获取功能如此危险以至于不应该使用它?

当我尝试编译使用gets()GCC函数的C代码时,

我明白了

警告:

(.text + 0x34):警告:`gets'函数很危险,不应该使用.

我记得这与堆栈保护和安全性有关,但我不确定为什么?

有人可以帮我删除这个警告并解释为什么会有这样的使用警告gets()

如果gets()是如此危险,为什么我们不能删除它?

c gets fgets buffer-overflow

210
推荐指数
9
解决办法
14万
查看次数