InglêsFrancêsEspanhol

Ad


favicon do OnWorks

pt-archiverp - Online na nuvem

Execute pt-archiverp no provedor de hospedagem gratuita OnWorks no Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

Este é o comando pt-archiverp que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

PROGRAMA:

NOME


pt-archiver - Arquiva linhas de uma tabela MySQL em outra tabela ou arquivo.

SINOPSE


Uso: pt-archiver [OPÇÕES] --source DSN --onde ONDE

pt-archiver nibbles registros de uma tabela MySQL. Os argumentos --source e --dest usam DSN
sintaxe; se COPY for sim, --dest assume o valor padrão da chave de --source.

Exemplos:

Arquive todas as linhas de oltp_server em olap_server e em um arquivo:

pt-archiver --source h = oltp_server, D = test, t = tbl --dest h = olap_server \
--file '/var/log/archive/%Y-%m-%d-%D.%t' \
- onde "1 = 1" --limite 1000 --commit-cada

Limpe (exclua) linhas órfãs da tabela filha:

pt-archiver --source h = host, D = db, t = child --purge \
--onde 'NÃO EXISTE (SELECIONE * DO pai ONDE col = filho.col)'

RISCOS


O Percona Toolkit é maduro, comprovado no mundo real e bem testado, mas todo banco de dados
ferramentas podem representar um risco para o sistema e o servidor de banco de dados. Antes de usar esta ferramenta,
por favor:

· Leia a documentação da ferramenta

· Reveja os conhecidos "BUGS" da ferramenta

· Teste a ferramenta em um servidor que não seja de produção

· Faça backup do seu servidor de produção e verifique os backups

DESCRIÇÃO


pt-archiver é a ferramenta que uso para arquivar tabelas conforme descrito em
<http://tinyurl.com/mysql-archiving>. O objetivo é um trabalho de baixo impacto e apenas avançado para
elimine dados antigos da tabela sem afetar muito as consultas OLTP. Você pode inserir o
dados em outra tabela, que não precisa estar no mesmo servidor. Você também pode escrever para um
arquivo em um formato adequado para LOAD DATA INFILE. Ou você não pode fazer nenhum dos dois, caso em que é
apenas um DELETE incremental.

pt-archiver é extensível por meio de um mecanismo de plug-in. Você pode injetar seu próprio código para adicionar
lógica de arquivamento avançado que pode ser útil para arquivar dados dependentes, aplicando
regras de negócios complexas ou construção de um data warehouse durante o processo de arquivamento.

Você precisa escolher os valores com cuidado para algumas opções. Os mais importantes são "--limit",
"--retries" e "--txn-size".

A estratégia é encontrar a (s) primeira (s) linha (s) e, em seguida, varrer alguns índices para a frente apenas para encontrar mais
linhas de forma eficiente. Cada consulta subsequente não deve varrer a tabela inteira; deve procurar
no índice e, em seguida, faça a varredura até encontrar mais linhas arquiváveis. Especificando o índice com
a parte 'i' do argumento "--source" pode ser crucial para isso; use "--dry-run" para
examine as consultas geradas e certifique-se de EXPLICÁ-las para ver se são eficientes
(na maioria das vezes você provavelmente deseja verificar a chave PRIMÁRIA, que é o padrão). Até
melhor, examine a diferença nos contadores de status do manipulador antes e depois de executar o
consulta e certifique-se de que não está varrendo toda a tabela a cada consulta.

Você pode desabilitar as otimizações buscar e depois verificar parcial ou totalmente com "--no-ascend"
e "--ascend-first". Às vezes, isso pode ser mais eficiente para chaves de várias colunas. Ser
ciente de que pt-archiver é construído para começar no início do índice que ele escolhe e verifica
apenas para a frente. Isso pode resultar em longas varreduras de mesa se você estiver tentando mordiscar
o final da tabela por um índice diferente daquele que ela prefere. Veja "--source" e leia
a documentação na parte "i" se isso se aplicar a você.

percona XtraDBName Agrupar


pt-archiver funciona com Percona XtraDB Cluster (PXC) 5.5.28-23.7 e mais recente, mas há
três limitações que você deve considerar antes de arquivar em um cluster:

Erro na confirmação
pt-archiver não verifica se há erros ao confirmar transações. As confirmações no PXC podem
falhar, mas a ferramenta ainda não verifica ou tenta novamente a transação quando isso acontece.
Se isso acontecer, a ferramenta morrerá.

Tabelas MyISAM
O arquivamento de tabelas MyISAM funciona, mas o suporte a MyISAM no PXC ainda é experimental no
momento deste lançamento. Existem vários bugs conhecidos com tabelas PXC, MyISAM e
Colunas "AUTO_INCREMENT". Portanto, você deve garantir que o arquivamento não seja diretamente
ou resultar indiretamente no uso de valores padrão "AUTO_INCREMENT" para uma tabela MyISAM.
Por exemplo, isso acontece com "--dest" se "--columns" for usado e o
A coluna "AUTO_INCREMENT" não foi incluída. A ferramenta não verifica isso!

Opções não agrupadas
Certas opções podem ou não funcionar. Por exemplo, se um nó de cluster também não for um
escravo, então "--check-slave-lag" não funciona. E uma vez que as tabelas PXC são geralmente
InnoDB, mas InnoDB não suporta "INSERT DELAYED", então "--delayed-insert" não suporta
trabalhar. Outras opções também podem não funcionar, mas a ferramenta não as verifica, portanto
você deve testar o arquivamento em um cluster de teste antes de arquivar em seu cluster real.

SAÍDA


Se você especificar "--progress", a saída é uma linha de cabeçalho, mais a saída de status em intervalos.
Cada linha na saída de status lista a data e hora atuais, quantos segundos pt-
o arquivador está em execução e quantas linhas arquivou.

Se você especificar "--statistics", "pt-archiver" gera o tempo e outras informações para ajudar
você identifica qual parte do seu processo de arquivamento leva mais tempo.

MANIPULAÇÃO DE ERROS


pt-archiver tenta captar sinais e sair normalmente; por exemplo, se você enviar
SIGTERM (Ctrl-C em sistemas UNIX-ish), ele pegará o sinal, imprimirá uma mensagem sobre o
sinalize e saia normalmente. Não irá executar "--analyze" ou "--optimize",
porque pode demorar muito para terminar. Ele executará todos os outros códigos normalmente,
incluindo ligações after_finish () em qualquer plug-in (consulte "ESTENDENDO").

Em outras palavras, um sinal, se detectado, sairá do ciclo de arquivamento principal e pulará
otimizar / analisar.

OPÇÕES


Especifique pelo menos um de "--dest", "--file" ou "--purge".

"--ignore" e "--replace" são mutuamente exclusivos.

"--txn-size" e "--commit-each" são mutuamente exclusivos.

"--low-priority-insert" e "--delayed-insert" são mutuamente exclusivos.

"--share-lock" e "--for-update" são mutuamente exclusivos.

"--analyze" e "--optimize" são mutuamente exclusivos.

"--no-ascend" e "--no-delete" são mutuamente exclusivos.

Os valores de DSN em "--dest" são padronizados para valores de "--source" se COPY for sim.

--analisar
tipo: string

Execute ANALYZE TABLE depois em "--source" e / ou "--dest".

Executa ANALYZE TABLE após terminar. O argumento é uma string arbitrária. Se isso
contém a letra 's', a fonte será analisada. Se contiver 'd', o
destino será analisado. Você pode especificar um ou ambos. Por exemplo, o
a seguir irá analisar ambos:

--analyze = ds

Vejohttp://dev.mysql.com/doc/en/analyze-table.html> para obter detalhes sobre ANALYZE TABLE.

- ascender primeiro
Suba apenas a primeira coluna do índice.

Se você quiser usar a otimização do índice ascendente (veja "--no-ascend"), mas não
deseja incorrer na sobrecarga de ascensão de um grande índice de várias colunas, você pode usar este
opção para dizer ao pt-archiver para subir apenas a coluna mais à esquerda do índice. Isso pode
fornecem um aumento significativo de desempenho em relação à não ascensão do índice, enquanto
evitando o custo de ascensão de todo o índice.

Consulte "EXTENDING" para uma discussão sobre como isso interage com plug-ins.

--pergunta-passa
Solicita uma senha ao se conectar ao MySQL.

--amortecedor
Buffer a saída para "--file" e esvazia na confirmação.

Desativa o autoflushing para "--file" e libera "--file" para o disco apenas quando uma transação
compromete. Isso normalmente significa que o arquivo é liberado em bloco pelo sistema operacional, então
pode haver algumas liberações implícitas no disco entre os commits também. O padrão é
liberar "--file" para o disco após cada linha.

O perigo é que uma falha possa causar a perda de dados.

O aumento de desempenho que observei com o uso de "--buffer" é de cerca de 5 a 15 por cento.
Sua milhagem pode variar.

--exclusão em massa
Exclua cada pedaço com uma única instrução (implica "--commit-each").

Exclua cada bloco de linhas em massa com uma única instrução "DELETE". A declaração
exclui todas as linhas entre a primeira e a última linha do bloco, inclusive. Isso implica
"--commit-each", pois seria uma má ideia "INSERT" as linhas uma de cada vez e
cometa-os antes do bulk "DELETE".

O método normal é deletar cada linha por sua chave primária. Exclusões em massa podem ser um
muito mais rápido. Eles tb poder não be mais rápido se você tiver uma cláusula "WHERE" complexa.

Esta opção adia completamente todo o processamento de "DELETE" até que o pedaço de linhas seja
finalizado. Se você tiver um plugin na fonte, seu método "before_delete" não será
chamado. Em vez disso, seu método "before_bulk_delete" é chamado mais tarde.

ATENÇÃO: se você tiver um plugin na fonte que às vezes não retorna verdadeiro de
"is_archivable ()", você deve usar esta opção apenas se entender o que ela faz. Se
o plugin instrui o "pt-archiver" a não arquivar uma linha, ela ainda será excluída por
a exclusão em massa!

- [sem] limite de exclusão em massa
padrão: sim

Adicione "--limit" à instrução "--bulk-delete".

Esta é uma opção avançada e você não deve desativá-la a menos que saiba o que você é
fazendo e por quê! Por padrão, "--bulk-delete" anexa uma cláusula "--limit" ao bulk
delete a instrução SQL. Em certos casos, esta cláusula pode ser omitida especificando
"--no-bulk-delete-limit". "--limit" ainda deve ser especificado.

--inserção em massa
Insira cada pedaço com LOAD DATA INFILE (implica "--bulk-delete" "--commit-each").

Insira cada pedaço de linhas com "LOAD DATA LOCAL INFILE". Isso pode ser muito mais rápido do que
inserir uma linha por vez com as instruções "INSERT". É implementado através da criação de um
arquivo temporário para cada bloco de linhas e gravando as linhas neste arquivo em vez de
inserindo-os. Quando o pedaço é concluído, ele carrega as linhas.

Para proteger a segurança dos seus dados, esta opção força o uso de exclusões em massa. Isto
seria inseguro excluir cada linha à medida que fosse encontrada, antes de inserir as linhas no
destino primeiro. Forçar exclusões em massa garante que a exclusão espere até que o
a inserção foi bem-sucedida.

As opções "--low-priority-insert", "--replace" e "--ignore" funcionam com isso
opção, mas "--delayed-insert" não.

Se "LOAD DATA LOCAL INFILE" gerar um erro nas linhas de "O comando usado não é
permitido com esta versão do MySQL ", consulte a documentação da opção DSN" L ".

--charset
forma abreviada: -A; tipo: string

Conjunto de caracteres padrão. Se o valor for utf8, define binmode do Perl em STDOUT para utf8,
passa a opção mysql_enable_utf8 para DBD :: mysql, e executa SET NAMES UTF8 após
conectando-se ao MySQL. Qualquer outro valor define binmode em STDOUT sem a camada utf8,
e executa SET NAMES após conectar-se ao MySQL.

Observe que apenas conjuntos de caracteres conhecidos pelo MySQL são reconhecidos; Por exemplo, "UTF8" irá
funcionar, mas "UTF-8" não.

Veja também "- [no] check-charset".

- [não] check-charset
padrão: sim

Certifique-se de que os conjuntos de caracteres de conexão e tabela sejam os mesmos. Desativar esta verificação pode
fazer com que o texto seja erroneamente convertido de um conjunto de caracteres para outro (geralmente de
utf8 para latin1) que pode causar perda de dados ou mojibake. Desativar esta verificação pode ser
útil ou necessário quando as conversões de conjunto de caracteres são pretendidas.

- [sem] colunas de verificação
padrão: sim

Certifique-se de que "--source" e "--dest" tenham as mesmas colunas.

Ativado por padrão; faz com que pt-archiver verifique se as tabelas de origem e destino
têm as mesmas colunas. Ele não verifica a ordem das colunas, tipo de dados, etc. Ele apenas
verifica se todas as colunas da origem existem no destino e vice-versa. Se
se houver alguma diferença, o arquivador de pt será encerrado com um erro.

Para desabilitar esta verificação, especifique --no-check-columns.

--check-intervalo
tipo: hora; padrão: 1s

Se "--check-slave-lag" for fornecido, isso define quanto tempo a ferramenta pausa cada
vez que descobre que um escravo está atrasado.
Essa verificação é realizada a cada 100 linhas.

--check-escravo-lag
tipo: string; repetível: sim

Pausar o arquivamento até que o atraso do escravo DSN especificado seja menor que "--max-lag". Esse
a opção pode ser especificada várias vezes para verificar mais de um escravo.

--colunas
forma abreviada: -c; tipo: array

Lista de colunas separadas por vírgulas para arquivar.

Especifique uma lista de colunas separadas por vírgulas para buscar, gravar no arquivo e inserir no
a tabela de destino. Se especificado, pt-archiver ignora outras colunas, a menos que
precisa adicioná-los à instrução "SELECT" para aumentar um índice ou deletar linhas.
Ele busca e usa essas colunas extras internamente, mas não as grava no
arquivo ou para a tabela de destino. Isto parece passe-os para os plug-ins.

Veja também "--primary-key-only".

--commit-cada
Confirma cada conjunto de linhas buscadas e arquivadas (desativa "--txn-size").

Confirma transações e libera "--file" após cada conjunto de linhas ter sido arquivado,
antes de buscar o próximo conjunto de linhas e antes de dormir se "--sleep" for especificado.
Desativa "--txn-size"; use "--limit" para controlar o tamanho da transação com
"--commit-each".

Esta opção é útil como um atalho para tornar "--limit" e "--txn-size" o mesmo valor,
mas o mais importante, evita que as transações sejam mantidas abertas durante a busca por mais
linhas. Por exemplo, imagine que você está arquivando linhas antigas desde o início de um
mesa grande, com "--limit" 1000 e "--txn-size" 1000. Após algum período de descoberta
e arquivando 1000 linhas por vez, pt-archiver encontra as últimas 999 linhas e arquiva
eles, então executa o próximo SELECT para encontrar mais linhas. Isso verifica o resto do
tabela, mas nunca encontra mais linhas. Ele manteve uma transação aberta por muito tempo
tempo, apenas para determinar que está acabado de qualquer maneira. Você pode usar "--commit-each" para evitar
esta.

--config
tipo: Array

Leia esta lista separada por vírgulas de arquivos de configuração; se especificado, este deve ser o primeiro
opção na linha de comando.

--base de dados
forma abreviada: -D; tipo: string

Conecte-se a este banco de dados.

--inserção atrasada
Adicione o modificador DELAYED às instruções INSERT.

Adiciona o modificador DELAYED às instruções INSERT ou REPLACE. Ver
<http://dev.mysql.com/doc/en/insert.html> para obter detalhes.

--destino
tipo: DSN

DSN especificando a tabela para arquivar.

Este item especifica uma tabela na qual o arquivador de pt inserirá as linhas arquivadas de
"--fonte". Ele usa o mesmo formato de argumento key = val que "--source". Mais faltando
os valores padrão são os mesmos valores de "--source", então você não precisa repetir as opções
que são iguais em "--source" e "--dest". Use a opção "--help" para ver qual
os valores são copiados de "--source".

ATENÇÃO: Usando um arquivo de opções padrão (F) opção DSN que define um soquete para
"--source" faz com que pt-archiver se conecte a "--dest" usando aquele socket, a menos que outro
socket para "--dest" é especificado. Isso significa que o arquivador de pt pode se conectar incorretamente
para "--source" quando se conecta a "--dest". Por exemplo:

--source F = host1.cnf, D = db, t = tbl --dest h = host2

Quando pt-archiver se conecta a "--dest", host2, ele se conecta por meio de "--source",
host1, soquete definido em host1.cnf.

--funcionamento a seco
Imprima consultas e saia sem fazer nada.

Faz com que o arquivo pt-br saia após imprimir o nome do arquivo e as instruções SQL que ele usará.

--Arquivo
tipo: string

Arquivo para arquivar, com FORMATO DE DATA()como formatação.

Nome do arquivo no qual gravar as linhas arquivadas. Um subconjunto do MySQL FORMATO DE DATA() formatação
códigos são permitidos no nome do arquivo, da seguinte maneira:

% d dia do mês, numérico (01..31)
% H hora (00..23)
% i minutos, numérico (00..59)
% m Mês, numérico (01..12)
% s segundos (00..59)
% Y ano, numérico, quatro dígitos

Você também pode usar os seguintes códigos de formato extra:

Nome do banco de dados% D
% t nome da tabela

Exemplo:

--file '/var/log/archive/%Y-%m-%d-%D.%t'

O conteúdo do arquivo está no mesmo formato usado por SELECT INTO OUTFILE, conforme documentado
no manual do MySQL: linhas terminadas por novas linhas, colunas terminadas por tabs, NULL
os caracteres são representados por \ N e os caracteres especiais são escapados por \. Isso permite
você recarrega um arquivo com as configurações padrão do LOAD DATA INFILE.

Se você quiser um cabeçalho de coluna no topo do arquivo, consulte "--header". O arquivo é automático
liberado por padrão; veja "--buffer".

--para-atualização
Adiciona o modificador FOR UPDATE às instruções SELECT.

Para detalhes, vejahttp://dev.mysql.com/doc/en/innodb-locking-reads.html>.

--cabeçalho
Imprime o cabeçalho da coluna no topo de "--file".

Grava os nomes das colunas como a primeira linha do arquivo fornecido por "--file". Se o arquivo
existe, não escreve cabeçalhos; isso mantém o arquivo carregável com LOAD DATA INFILE em
caso você acrescente mais saída a ele.

--Socorro
Mostre ajuda e saia.

- seleção de alta prioridade
Adiciona o modificador HIGH_PRIORITY às instruções SELECT.

Vejohttp://dev.mysql.com/doc/en/select.html> para obter detalhes.

--hospedeiro
forma abreviada: -h; tipo: string

Conecte-se ao host.

--ignorar
Use IGNORE para instruções INSERT.

Faz com que INSERTs em "--dest" sejam INSERT IGNORE.

--limite
tipo: int; padrão: 1

Número de linhas para buscar e arquivar por instrução.

Limita o número de linhas retornadas pelas instruções SELECT que recuperam linhas para
arquivo. O padrão é uma linha. Pode ser mais eficiente aumentar o limite, mas seja
cuidado se você estiver arquivando esparsamente, pulando muitas linhas; isso pode potencialmente
causar mais contenção com outras consultas, dependendo do mecanismo de armazenamento, transação
nível de isolamento e opções como "--for-update".

--local
Não escreva consultas OPTIMIZE ou ANALYZE no binlog.

Adiciona o modificador NO_WRITE_TO_BINLOG às consultas ANALYZE e OPTIMIZE. Veja "--analyze"
para obter detalhes.

- low-priority-delete
Adiciona o modificador LOW_PRIORITY às instruções DELETE.

Vejohttp://dev.mysql.com/doc/en/delete.html> para obter detalhes.

- inserção de baixa prioridade
Adiciona o modificador LOW_PRIORITY às instruções INSERT ou REPLACE.

Vejohttp://dev.mysql.com/doc/en/insert.html> para obter detalhes.

--max-flow-ctl
tipo: float

Um pouco semelhante a --max-lag, mas para clusters PXC. Verifique o tempo médio gasto pelo cluster
pausar para Controle de Fluxo e fazer a ferramenta pausar se ultrapassar a porcentagem indicada
na opção. O padrão é nenhuma verificação de controle de fluxo. Esta opção está disponível para PXC
versões 5.6 ou superior.

--max-lag
tipo: hora; padrão: 1s

Pausar o arquivamento se o slave fornecido por "--check-slave-lag" atrasar.

Esta opção faz com que o arquivador pt olhe para o escravo toda vez que ele estiver para buscar
outra linha. Se o lag do escravo for maior que o valor da opção, ou se o escravo
não está em execução (então seu lag é NULL), pt-table-checksum adormece por "--check-interval"
segundos e, em seguida, olha para o atraso novamente. Ele se repete até que o escravo seja capturado,
então prossegue para buscar e arquivar a linha.

Esta opção pode eliminar a necessidade de "--sleep" ou "--sleep-coef".

--sem ascensão
Não use a otimização de índice crescente.

A otimização do índice ascendente padrão faz com que o "pt-archiver" otimize repetidas
Consultas "SELECT" para que busquem o índice onde a consulta anterior terminou e, em seguida, varrem
ao longo dele, em vez de varrer desde o início da tabela todas as vezes. Isto é
habilitado por padrão porque geralmente é uma boa estratégia para acessos repetidos.

Índices grandes de várias colunas podem fazer com que a cláusula WHERE seja complexa o suficiente para
isso poderia ser menos eficiente. Considere, por exemplo, uma CHAVE PRIMÁRIA de quatro colunas
em (a, b, c, d). A cláusula WHERE para iniciar onde a última consulta terminou é a seguinte:

ONDE (a>?)
OU (a =? AND b>?)
OU (a =? AND b =? AND c>?)
OU (a =? AND b =? AND c =? AND d> =?)

Preencher os marcadores de posição com valores usa memória e CPU, adiciona tráfego de rede e
sobrecarga de análise e pode tornar a consulta mais difícil para o MySQL otimizar. Um de quatro colunas
chave não é grande coisa, mas uma chave de dez colunas em que cada coluna permite "NULL" pode
estar.

Aumentar o índice pode não ser necessário se você sabe que está simplesmente removendo linhas
desde o início da tabela em pedaços, mas não deixando nenhum buraco, então começando em
o início da tabela é, na verdade, a coisa mais eficiente a se fazer.

Veja também "--ascend-first". Veja "ESTENDENDO" para uma discussão de como isso interage
com plug-ins.

--não-deletar
Não exclua linhas arquivadas.

Faz com que o "pt-archiver" não exclua linhas após processá-las. Isso não permite
"--no-ascend", porque habilitar os dois causaria um loop infinito.

Se houver um plug-in no DSN de origem, seu método "before_delete" é chamado de qualquer maneira,
mesmo que "pt-archiver" não execute a exclusão. Veja "ESTENDENDO" para mais informações sobre
plugins.

--otimizar
tipo: string

Execute OPTIMIZE TABLE depois em "--source" e / ou "--dest".

Executa OPTIMIZE TABLE após terminar. Veja "--analyze" para a sintaxe da opção e
<http://dev.mysql.com/doc/en/optimize-table.html> para obter detalhes sobre OPTIMIZE TABLE.

--senha
forma abreviada: -p; tipo: string

Senha para usar ao conectar. Se a senha contiver vírgulas, elas devem ser escapadas
com uma barra invertida: "exam \, ple"

--pid
tipo: string

Crie o arquivo PID fornecido. A ferramenta não iniciará se o arquivo PID já existir e
o PID que ele contém é diferente do PID atual. No entanto, se o arquivo PID
existe e o PID que contém não está mais em execução, a ferramenta irá sobrescrever o PID
arquivo com o PID atual. O arquivo PID é removido automaticamente quando a ferramenta é encerrada.

--plugar
tipo: string

Nome do módulo Perl a ser usado como plugin genérico.

Especifique o nome do módulo Perl de um plug-in de uso geral. Atualmente é usado apenas
para estatísticas (veja "--statistics") e deve ter "new ()" e um método "statistics ()".

O método "new (src =" $ src, dst => $ dst, opts => $ o)> obtém a fonte e
DSNs de destino e suas conexões de banco de dados, assim como o específico da conexão
plugins fazem. Ele também obtém um objeto OptionParser ($ o) para acessar a linha de comando
opções (exemplo: "$ o-" get ('purge');>).

O método "estatísticas (\% stats, $ time)" obtém um hashref das estatísticas coletadas por
o trabalho de arquivamento e a hora em que todo o trabalho foi iniciado.

--porta
forma abreviada: -P; tipo: int

Número da porta a ser usada para conexão.

--somente chave primária
Apenas colunas de chave primária.

Um atalho para especificar "--columns" com as colunas da chave primária. Isto é um
eficiência se você deseja apenas limpar linhas; evita buscar a linha inteira, quando
apenas as colunas da chave primária são necessárias para as instruções "DELETE". Veja também "--purge".

--progresso
tipo: int

Imprima informações de progresso a cada X linhas.

Imprime a hora atual, o tempo decorrido e as linhas arquivadas a cada X linhas.

--purga
Limpe em vez de arquivar; permite omitir "--file" e "--dest".

Permite o arquivamento sem um argumento "--file" ou "--dest", que é efetivamente uma eliminação
uma vez que as linhas são apenas excluídas.

Se você deseja apenas limpar as linhas, considere especificar as colunas de chave primária da tabela
com "--primary-key-only". Isso impedirá a busca de todas as colunas do servidor por
nenhuma razão.

--exclusão rápida
Adiciona o modificador QUICK às instruções DELETE.

Vejohttp://dev.mysql.com/doc/en/delete.html> para obter detalhes. Conforme declarado no
documentação, em alguns casos pode ser mais rápido usar DELETE QUICK seguido por OPTIMIZE
TABELA. Você pode usar "--optimize" para isso.

--quieto
forma abreviada: -q

Não imprima nenhuma saída, como para "--statistics".

Suprime a saída normal, incluindo a saída de "--statistics", mas não suprime
a saída de "--why-quit".

--substituir
Faz com que INSERTs em "--dest" sejam gravados como REPLACE.

- tentativas
tipo: int; padrão: 1

Número de novas tentativas por tempo limite ou conflito.

Especifica o número de vezes que o arquivador de pt deve tentar novamente quando há um bloqueio InnoDB
tempo limite de espera ou impasse. Quando as tentativas se esgotam, o arquivador pt sairá com um
erro.

Considere cuidadosamente o que você deseja que aconteça quando estiver arquivando entre uma mistura de
mecanismos de armazenamento transacionais e não transacionais. O INSERT para "--dest" e
DELETE de "--source" estão em conexões separadas, então eles não
participar da mesma transação, mesmo se estiverem no mesmo servidor. No entanto, pt-
o arquivador implementa transações distribuídas simples em código, portanto, confirma e reverte
deve acontecer conforme desejado nas duas conexões.

No momento, não escrevi nenhum código para lidar com erros com armazenamento transacional
outros motores além do InnoDB. Solicite esse recurso se precisar.

--tempo de execução
tipo: tempo

É hora de correr antes de sair.

Sufixo opcional s = segundos, m = minutos, h = horas, d = dias; se nenhum sufixo, s é usado.

- [sem] incremento automático seguro
padrão: sim

Não arquive a linha com no máximo AUTO_INCREMENT.

Adiciona uma cláusula WHERE extra para evitar que o arquivador-pt remova a linha mais recente quando
ascendente uma chave AUTO_INCREMENT de coluna única. Isso evita a reutilização
AUTO_INCREMENT valores se o servidor for reiniciado e está habilitado por padrão.

A cláusula WHERE extra contém o valor máximo da coluna de incremento automático a partir de
o início da tarefa de arquivamento ou eliminação. Se novas linhas forem inseridas durante o arquivador de pt
está em execução, ele não os verá.

--sentinela
tipo: string; padrão: / tmp / pt-archiver-sentinel

Saia se este arquivo existir.

A presença do arquivo especificado por "--sentinel" fará com que pt-archiver pare
arquivamento e saída. O padrão é / tmp / pt-archiver-sentinel. Você pode encontrar isto
útil para interromper tarefas cron normalmente, se necessário. Veja também "--stop".

--set-vars
tipo: Array

Defina as variáveis ​​do MySQL nesta lista separada por vírgulas de pares "variável = valor".

Por padrão, os conjuntos de ferramentas:

wait_timeout = 10000

As variáveis ​​especificadas na linha de comando substituem esses padrões. Por exemplo,
especificar "--set-vars wait_timeout = 500" substitui o valor padrão de 10000.

A ferramenta imprime um aviso e continua se uma variável não puder ser definida.

--share-lock
Adiciona o modificador LOCK IN SHARE MODE às instruções SELECT.

Vejohttp://dev.mysql.com/doc/en/innodb-locking-reads.html>.

--skip-Foreign-key-checks
Desativa as verificações de chave estrangeira com SET FOREIGN_KEY_CHECKS = 0.

--dormir
tipo: int

Tempo de sono entre buscas.

Especifica por quanto tempo hibernar entre as instruções SELECT. O padrão é não dormir
tudo. As transações NÃO são confirmadas, e o arquivo "--file" NÃO é liberado antes
adormecido. Veja "--txn-size" para controlar isso.

Se "--commit-each" for especificado, a confirmação e a liberação acontecem antes de dormir.

--sleep-coef
tipo: float

Calcule "--sleep" como um múltiplo da última vez de SELECT.

Se esta opção for especificada, o arquivador de pt irá hibernar durante o tempo de consulta do último
SELECT multiplicado pelo coeficiente especificado.

Esta é uma maneira um pouco mais sofisticada de controlar os SELECTs: sleep a variando
quantidade de tempo entre cada SELECT, dependendo de quanto tempo os SELECTs estão levando.

--tomada
formas curtas; tipo: string

Arquivo de soquete a ser usado para conexão.

--fonte
tipo: DSN

DSN especificando a tabela a partir da qual arquivar (obrigatório). Este argumento é um DSN. Ver
"OPÇÕES DSN" para a sintaxe. A maioria das opções controlam como o arquivador de pt se conecta ao MySQL,
mas existem algumas opções estendidas de DSN na sintaxe desta ferramenta. O D, t e eu
opções selecione uma tabela para arquivar:

--source h = my_server, D = my_database, t = my_tbl

A opção a especifica o banco de dados a ser definido como o padrão de conexão com USE. Se
a opção b é verdadeira, ela desativa o log binário com SQL_LOG_BIN. A opção m
especifica ações conectáveis, que um módulo Perl externo pode fornecer. O único
a parte necessária é a mesa; outras partes podem ser lidas em vários lugares do
ambiente (como arquivos de opções).

A parte 'i' merece menção especial. Isto diz ao pt-archiver qual índice deve
digitalize para arquivar. Isso aparece em uma dica FORCE INDEX ou USE INDEX no SELECT
declarações usadas para buscar linhas arquiváveis. Se você não especificar nada, pt-archiver
irá descobrir automaticamente um bom índice, preferindo uma "CHAVE PRIMÁRIA" se houver. No meu
experimentar isso geralmente funciona bem, então na maioria das vezes você provavelmente pode simplesmente omitir o
parte 'i'.

O índice é usado para otimizar acessos repetidos à tabela; pt-archiver lembra
a última linha que ele recupera de cada instrução SELECT e a usa para construir um WHERE
cláusula, usando as colunas no índice especificado, que deve permitir que o MySQL inicie o
próximo SELECT onde o último terminou, ao invés de potencialmente escanear a partir do
início da tabela com cada SELECT sucessivo. Se você estiver usando um externo
plug-ins, consulte "EXTENDING" para uma discussão sobre como eles interagem com o ascendente
índices.

As opções 'a' e 'b' permitem que você controle como as instruções fluem através do binário
registro. Se você especificar a opção 'b', o registro binário será desabilitado no
conexão. Se você especificar a opção 'a', a conexão irá "USAR" o especificado
banco de dados, que você pode usar para evitar que os escravos executem os eventos de log binário
com opções "--replicate-ignore-db". Essas duas opções podem ser usadas como diferentes
métodos para atingir o mesmo objetivo: arquivar dados do mestre, mas deixá-los no
escravo. Por exemplo, você pode executar um trabalho de limpeza no mestre e impedi-lo de
acontecendo no escravo usando seu método de escolha.

ATENÇÃO: Usando um arquivo de opções padrão (F) opção DSN que define um soquete para
"--source" faz com que pt-archiver se conecte a "--dest" usando aquele socket, a menos que outro
socket para "--dest" é especificado. Isso significa que o arquivador de pt pode se conectar incorretamente
para "--source" quando se destina a conectar-se a "--dest". Por exemplo:

--source F = host1.cnf, D = db, t = tbl --dest h = host2

Quando pt-archiver se conecta a "--dest", host2, ele se conecta por meio de "--source",
host1, soquete definido em host1.cnf.

--Estatisticas
Colete e imprima estatísticas de tempo.

Faz com que pt-archiver colete estatísticas de tempo sobre o que ele faz. Essas estatísticas
estão disponíveis para o plugin especificado por "--plugin"

A menos que você especifique "--quiet", "pt-archiver" imprime as estatísticas ao sair. o
as estatísticas são assim:

Started at 2008-07-18T07:18:53, ended at 2008-07-18T07:18:53
Fonte: D = db, t = tabela
SELECIONE 4
INSERIR 4
APAGAR 4
Porcentagem de tempo de contagem de ação
comprometer 10 0.1079 88.27
selecione 5 0.0047 3.87
excluindo 4 0.0028 2.29
inserindo 4 0.0028 2.28
outro 0 0.0040 3.29

As primeiras duas (ou três) linhas mostram os horários e as tabelas de origem e destino. o
as próximas três linhas mostram quantas linhas foram buscadas, inseridas e excluídas.

As linhas restantes mostram contagens e tempo. As colunas são a ação, o total
número de vezes que a ação foi cronometrada, o tempo total que levou e a porcentagem do
tempo de execução total do programa. As linhas são classificadas em ordem decrescente de tempo total. o
a última linha é o resto do tempo não explicitamente atribuído a nada. Ações irão
variam dependendo das opções de linha de comando.

Se "--why-quit" for fornecido, seu comportamento será ligeiramente alterado. Esta opção faz com que
imprime o motivo da saída mesmo quando é apenas porque não há mais linhas.

Esta opção requer o módulo Time :: HiRes padrão, que faz parte do núcleo Perl em
versões razoavelmente novas do Perl.

--Pare
Pare de executar as instâncias criando o arquivo sentinela.

Faz com que pt-archiver crie o arquivo sentinela especificado por "--sentinel" e saia.
Isso deve ter o efeito de parar todas as instâncias em execução que estão observando o
mesmo arquivo sentinela.

--txn-tamanho
tipo: int; padrão: 1

Número de linhas por transação.

Especifica o tamanho, em número de linhas, de cada transação. Zero desativa transações
completamente. Depois que o arquivador de pt processa tantas linhas, ele confirma tanto o
"--source" e o "--dest" se fornecidos, e esvazia o arquivo fornecido por "--file".

Este parâmetro é crítico para o desempenho. Se você estiver arquivando de um servidor ativo,
que, por exemplo, está fazendo um trabalho pesado de OLTP, você precisa escolher um bom equilíbrio entre
tamanho da transação e sobrecarga de commit. Transações maiores criam a possibilidade de
mais contenção de bloqueio e deadlocks, mas transações menores causam mais
comprometer sobrecarga, que pode ser significativa. Para se ter uma ideia, em um pequeno conjunto de teste eu
trabalhei enquanto escrevia pt-archiver, um valor de 500 fazia com que o arquivamento demorasse cerca de 2
segundos por 1000 linhas em uma instância do MySQL silenciosa em minha máquina desktop,
arquivamento em disco e em outra mesa. Desativando transações com valor zero,
que ativa o autocommit, reduziu o desempenho para 38 segundos por mil linhas.

Se você não estiver arquivando de ou para um mecanismo de armazenamento transacional, você pode querer
desative as transações para que o arquivador de pt não tente fazer o commit.

--do utilizador
forma abreviada: -u; tipo: string

Usuário para login, se não for o usuário atual.

--versão
Mostra a versão e sai.

- [sem] verificação de versão
padrão: sim

Verifique a versão mais recente do Percona Toolkit, MySQL e outros programas.

Este é um recurso padrão de "verificar se há atualizações automaticamente", com dois adicionais
recursos. Primeiro, a ferramenta verifica a versão de outros programas no sistema local em
além de sua própria versão. Por exemplo, ele verifica a versão de cada servidor MySQL
ele se conecta ao Perl e ao módulo Perl DBD :: mysql. Em segundo lugar, ele verifica e avisa
sobre versões com problemas conhecidos. Por exemplo, MySQL 5.5.25 tinha um bug crítico e
foi relançado como 5.5.25a.

Quaisquer atualizações ou problemas conhecidos são impressos em STDOUT antes da saída normal da ferramenta.
Este recurso nunca deve interferir na operação normal da ferramenta.

Para mais informações visite .

--Onde
tipo: string

Cláusula WHERE para limitar quais linhas arquivar (obrigatório).

Especifica uma cláusula WHERE para limitar quais linhas são arquivadas. Não inclua a palavra
ONDE. Você pode precisar citar o argumento para evitar que seu shell o interprete.
Por exemplo:

--onde 'ts <data_atual - intervalo de 90 dias'

Por segurança, "--where" é necessário. Se você não exigir uma cláusula WHERE, use
"--onde" 1 = 1.

--por que sair
Imprima o motivo da saída, a menos que as linhas tenham se esgotado.

Faz com que pt-archiver imprima uma mensagem se sair por qualquer motivo que não seja a execução
fora das linhas para arquivar. Isso pode ser útil se você tiver um cron job com "--run-time"
especificado, por exemplo, e você deseja ter certeza de que o arquivador de pt está terminando antes
ficando sem tempo.

Se "--statistics" for fornecido, o comportamento será ligeiramente alterado. Irá imprimir o
motivo para sair, mesmo quando é apenas porque não há mais linhas.

Esta saída é impressa mesmo se "--quiet" for fornecido. Isso é para que você possa colocar "pt-archiver" em
um trabalho "cron" e receba um e-mail se houver uma saída anormal.

dsn OPÇÕES


Essas opções de DSN são usadas para criar um DSN. Cada opção é fornecida como "opção = valor".
As opções diferenciam maiúsculas de minúsculas, portanto, P e p não são a mesma opção. Não pode haver
espaço em branco antes ou depois de "=" e se o valor contiver espaço em branco, ele deve ser colocado entre aspas.
As opções de DSN são separadas por vírgulas. Veja a página de manual do percona-toolkit para detalhes completos.

· uma

cópia: não

Banco de dados para usar ao executar consultas.

· UMA

dsn: conjunto de caracteres; cópia: sim

Conjunto de caracteres padrão.

· B

cópia: não

Se verdadeiro, desabilite o binlog com SQL_LOG_BIN.

·D

dsn: banco de dados; cópia: sim

Banco de dados que contém a tabela.

F

dsn: mysql_read_default_file; cópia: sim

Leia apenas as opções padrão do arquivo fornecido

· H

dsn: host; cópia: sim

Conecte-se ao host.

· eu

cópia: sim

Índice a ser usado.

· EU

cópia: sim

Habilite explicitamente LOAD DATA LOCAL INFILE.

Por alguma razão, alguns fornecedores compilam libmysql sem o --enable-local-infile
opção, que desativa a instrução. Isso pode levar a situações estranhas, como o
servidor permitindo LOCAL INFILE, mas o cliente lançando exceções se for usado.

No entanto, desde que o servidor permita LOAD DATA, os clientes podem reativá-lo facilmente; Ver
e
<http://search.cpan.org/~capttofu/DBD-mysql/lib/DBD/mysql.pm>. Esta opção faz
exatamente isso.

Embora não tenhamos encontrado um caso em que ativar essa opção leve a erros ou
comportamento, para estar no lado seguro, esta opção não está ativada por padrão.

· M

cópia: não

Nome do módulo de plug-in.

· P

dsn: senha; cópia: sim

Senha para usar ao conectar. Se a senha contiver vírgulas, elas devem ser escapadas
com uma barra invertida: "exam \, ple"

·P

dsn: porta; cópia: sim

Número da porta a ser usada para conexão.

· S

dsn: mysql_socket; cópia: sim

Arquivo de soquete a ser usado para conexão.

· T

cópia: sim

Tabela para arquivar de / para.

· você

dsn: usuário; cópia: sim

Usuário para login, se não for o usuário atual.

EXTENSÍVEL


pt-archiver é extensível ao conectar módulos Perl externos para lidar com alguma lógica e / ou
ações. Você pode especificar um módulo para "--source" e "--dest", com o 'm'
parte da especificação. Por exemplo:

--source D = test, t = test1, m = My :: Module1 --dest m = My :: Module2, t = test2

Isso fará com que pt-archiver carregue os pacotes My :: Module1 e My :: Module2, crie
instâncias deles e, em seguida, faça chamadas para eles durante o processo de arquivamento.

Você também pode especificar um plugin com "--plugin".

O módulo deve fornecer esta interface:

novo (dbh => $ dbh, db => $ db_name, tbl => $ tbl_name)
O construtor do plugin recebe uma referência para o identificador do banco de dados, o banco de dados
nome e nome da tabela. O plugin é criado logo após pt-archiver abrir o
conexão, e antes de examinar a tabela fornecida nos argumentos. Isso dá a
plugin uma chance de criar e preencher tabelas temporárias ou fazer outro trabalho de configuração.

before_begin (cols => \ @cols, allcols => \ @allcols)
Este método é chamado logo antes do arquivador de pt começar a iterar através das linhas e
arquivá-los, mas depois fazer todos os outros trabalhos de configuração (examinar as estruturas da mesa,
projetar consultas SQL e assim por diante). Esta é a única vez que o arquivador-pt diz ao plugin
nomes de colunas para as linhas que passarão pelo plugin durante o arquivamento.

O argumento "cols" são os nomes das colunas que o usuário solicitou para ser arquivado, seja por
padrão ou pela opção "--columns". O argumento "allcols" é a lista de colunas
nomes para cada arquivo-pt de linha serão buscados na tabela de origem. Pode buscar mais
colunas que o usuário solicitou, pois necessita de algumas colunas para seu próprio uso. Quando
funções de plugin subsequentes recebem uma linha, é a linha completa contendo todos os extras
colunas, se houver, adicionadas ao final.

is_archivable (row => \ @row)
Este método é chamado para cada linha para determinar se ela é arquivável. Esse
aplica-se apenas a "--source". O argumento é a própria linha, como um arrayref. Se o
o método retorna verdadeiro, a linha será arquivada; caso contrário, será ignorado.

Ignorar uma linha adiciona complicações para índices não exclusivos. Normalmente pt-archiver usa um
Cláusula WHERE projetada para direcionar a última linha processada como o local para iniciar a varredura
para a próxima instrução SELECT. Se você pulou a linha retornando falso de
is_archivable (), pt-archiver pode entrar em um loop infinito porque a linha ainda
existe. Portanto, quando você especifica um plugin para o argumento "--source", pt-archiver
mudará sua cláusula WHERE ligeiramente. Em vez de começar em "maior ou igual
para "a última linha processada, ele começará" estritamente maior que ". Isso funcionará
bom em índices únicos, como chaves primárias, mas pode pular linhas (deixar buracos) em
índices não exclusivos ou quando ascendem apenas a primeira coluna de um índice.

"pt-archiver" mudará a cláusula da mesma maneira se você especificar "--no-delete",
porque novamente um loop infinito é possível.

Se você especificar a opção "--bulk-delete" e retornar falso a partir deste método,
"pt-archiver" pode não fazer o que você deseja. A linha não será arquivada, mas será
excluído, uma vez que exclusões em massa operam em intervalos de linhas e não sabem quais linhas o
plugin selecionado para manter.

Se você especificar a opção "--bulk-insert", o valor de retorno deste método influenciará
se a linha é gravada no arquivo temporário para a inserção em massa, portanto, as inserções em massa
funcionará conforme o esperado. No entanto, as inserções em massa exigem exclusões em massa.

before_delete (row => \ @row)
Este método é chamado para cada linha antes de ser excluído. Isso se aplica apenas a
"--fonte". Este é um bom lugar para você lidar com dependências, como deletar
coisas que têm uma chave estrangeira para a linha que você está prestes a deletar. Você também pode usar
isso para arquivar recursivamente todas as tabelas dependentes.

Este método de plugin é chamado mesmo se "--no-delete" for fornecido, mas não se
"--bulk-delete" é fornecido.

before_bulk_delete (first_row => \ @row, last_row => \ @row)
Este método é chamado antes de uma exclusão em massa ser executada. É semelhante ao
método "before_delete", exceto que seus argumentos são a primeira e a última linha do intervalo
Para ser deletado. Ele é chamado mesmo se "--no-delete" for fornecido.

before_insert (row => \ @row)
Este método é chamado para cada linha antes de ser inserido. Isso se aplica apenas a
"--dest". Você pode usar isso para inserir a linha em várias tabelas, talvez com um
Cláusula ON DUPLICATE KEY UPDATE para construir tabelas de resumo em um data warehouse.

Este método não é chamado se "--bulk-insert" for fornecido.

before_bulk_insert (first_row => \ @row, last_row => \ @row, filename =>
bulk_insert_filename)
Este método é chamado antes de uma inserção em massa ser executada. É semelhante ao
método "before_insert", exceto que seus argumentos são a primeira e a última linha do intervalo
Para ser deletado.

custom_sth (row => \ @row, sql => $ sql)
Este método é chamado antes de inserir a linha, mas depois de "before_insert ()". Isto
permite que o plug-in especifique uma instrução "INSERT" diferente, se desejado. O retorno
valor (se houver) deve ser um identificador de instrução DBI. O parâmetro "sql" é o texto SQL
usado para preparar a instrução "INSERT" padrão. Este método não é chamado se você
especifique "--bulk-insert".

Se nenhum valor for retornado, o identificador de instrução "INSERT" padrão é usado.

Este método se aplica apenas ao plug-in especificado para "--dest", portanto, se o seu plug-in não for
fazendo o que você espera, verifique se você especificou isso para o destino e não o
fonte.

custom_sth_bulk (first_row => \ @row, last_row => \ @row, sql => $ sql, filename =>
$ bulk_insert_filename)
Se você especificou "--bulk-insert", este método é chamado antes do bulk
inserir, mas depois de "before_bulk_insert ()", e os argumentos são diferentes.

O valor de retorno deste método, etc, é semelhante ao "custom_sth ()"método.

after_finish ()
Este método é chamado depois que pt-archiver sai do ciclo de arquivamento, confirma todo o banco de dados
trata, fecha "--file" e imprime as estatísticas finais, mas antes que o arquivador de pt seja executado
ANALYZE ou OPTIMIZE (veja "--analyze" e "--optimize").

Se você especificar um plugin para "--source" e "--dest", construções pt-archiver, chamadas
before_begin (), e chamadas after_finish () nos dois plug-ins na ordem "--source",
"--dest".

pt-archiver assume que controla as transações, e que o plugin NÃO irá confirmar ou rolar
de volta o identificador do banco de dados. O identificador do banco de dados passado para o construtor do plugin é o
mesmo identificador pt-archiver usa a si mesmo. Lembre-se de que "--source" e "--dest" são separados
alças.

Um módulo de amostra pode ter a seguinte aparência:

pacote My :: Module;

sub-novo {
meu ($ classe,% args) = @_;
retornar bênção (\% args, $ class);
}

sub antes_começar {
meu ($ self,% args) = @_;
# Salve os nomes das colunas para mais tarde
$ self -> {cols} = $ args {cols};
}

sub é_arquivável {
meu ($ self,% args) = @_;
# Faça alguma lógica avançada com $ args {row}
1 voltar;
}

sub before_delete {} # Não faça nada
sub before_insert {} # Não tome nenhuma ação
sub custom_sth {} # Não tome nenhuma ação
sub after_finish {} # Não faça nada

1;

MEIO AMBIENTE


A variável de ambiente "PTDEBUG" permite a saída de depuração detalhada para STDERR. Para habilitar
depurar e capturar toda a saída para um arquivo, execute a ferramenta como:

PTDEBUG = 1 pt-arquivador ...> ARQUIVO 2> & 1

Tenha cuidado: a saída de depuração é volumosa e pode gerar vários megabytes de saída.

SISTEMA REQUISITOS


Você precisa de Perl, DBI, DBD :: mysql e alguns pacotes principais que devem ser instalados em qualquer
versão razoavelmente nova do Perl.

Use pt-archiverp online usando serviços onworks.net


Servidores e estações de trabalho gratuitos

Baixar aplicativos Windows e Linux

  • 1
    Kit Div
    Kit Div
    DivKit é um servidor de código aberto baseado em
    Estrutura de IU (SDUI). Ele permite que você
    distribuir atualizações provenientes do servidor para
    diferentes versões de aplicativos. Além disso, pode ser
    usado para ...
    Baixe o DivKit
  • 2
    subconversor
    subconversor
    Utilitário para converter entre vários
    formato de assinatura. Usuários do Shadowrocket
    deve usar ss, ssr ou v2ray como alvo.
    Você pode adicionar &remark= a
    HT curtido no Telegram...
    Baixar subconversor
  • 3
    SWASH
    SWASH
    SWASH é um numérico de uso geral
    ferramenta para simular instabilidade,
    não hidrostático, superfície livre,
    fluxo rotacional e fenômenos de transporte
    em águas costeiras como ...
    Baixar SWASH
  • 4
    VBA-M (arquivado - agora no Github)
    VBA-M (arquivado - agora no Github)
    O projeto mudou para
    https://github.com/visualboyadvance-m/visualboyadvance-m
    Recursos: Criação de truques, salvar estados multi
    sistema, suporta gba, gbc, gb, sgb,
    sgb2Tu...
    Baixar VBA-M (arquivado - agora no Github)
  • 5
    Stacer
    Stacer
    Otimizador e monitoramento de sistema Linux
    Repositório Github:
    https://github.com/oguzhaninan/Stacer.
    Público: usuários finais / desktop. Do utilizador
    interface: Qt. Programação L...
    Baixar Stacer
  • 6
    raposa-laranja
    raposa-laranja
    Fork do TeamWinRecoveryProject (TWRP)
    com muitas funções adicionais, redesenho
    e mais recursos:Suporta agudos e
    não-Treble ROMsUp-to-date Oreo kernel,
    construído...
    Baixar OrangeFox
  • Mais "

Comandos Linux

  • 1
    aa-clickhook
    aa-clickhook
    aa-clickhook - clique no gancho do sistema para
    AppArmor DESCRIÇÃO: Quando um clique
    pacote está instalado, clique irá executar
    ganchos do sistema e do usuário. o clique
    Sistema AppArmor...
    Executar aa-clickhook
  • 2
    consulta de clique
    consulta de clique
    aa-clickquery - programa para consulta
    click-apparmor DESCRIÇÃO: Este programa
    é usado para consultar click-apparmor para
    Informação. USO: aa-clickquery
    --clique-fra...
    Executar aa-clickquery
  • 3
    cqrlog
    cqrlog
    CQRLOG - Programa de registro avançado para
    operadores de rádio ham DESCRIÇÃO: CQRLOG
    é um registrador de rádio amador avançado baseado em
    Banco de dados MySQL. Fornece controle de rádio
    ba ...
    Execute cqrlog
  • 4
    troca de cramfs
    troca de cramfs
    cramfsswap - troca endianess de um cram
    sistema de arquivos (cramfs) ...
    Executar cramfsswap
  • 5
    FvwmEventName
    FvwmEventName
    FvwmEvent - o módulo de evento fvwm ...
    Execute FvwmEvent
  • 6
    FvwmFormName
    FvwmFormName
    FvwmForm - módulo de formulário de entrada para Fvwm ...
    Executar FvwmForm
  • Mais "

Ad