Este é o comando pt-show-grantp 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 Windows online ou emulador MAC OS online
PROGRAMA:
NOME
pt-show-grant - canonize e imprima concessões MySQL para que você possa replicar com eficácia,
compare-os e controle-os de versão.
SINOPSE
Uso: pt-show-garante [OPÇÕES] [DSN]
pt-show-grant mostra as concessões (privilégios do usuário) de um servidor MySQL.
Exemplos:
pt-show-grant
pt-show-grant --separate --revoke | diff othergrants.sql -
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-show-concede extrações, pedidos e, em seguida, imprime concessões para contas de usuário MySQL.
Por que você quer isso? Existem várias razões.
O primeiro é replicar facilmente os usuários de um servidor para outro; você pode simplesmente extrair
as concessões do primeiro servidor e canalizam a saída diretamente para outro servidor.
O segundo uso é colocar suas concessões no controle de versão. Se você fizer um diário automatizado
conceder despejo no controle de versão, você obterá muitos conjuntos de alterações espúrios para concessões que
não mude, porque o MySQL imprime as concessões reais em uma ordem aparentemente aleatória. Para
exemplo, um dia vai dizer
GRANT DELETE, INSERT, UPDATE ON `test`. * TO 'foo' @ '%';
E então outro dia dirá
GRANT INSERT, DELETE, UPDATE ON `test`. * TO 'foo' @ '%';
As concessões não mudaram, mas o pedido mudou. Este script classifica as concessões dentro do
linha, entre 'GRANT' e 'ON'. Se houver várias linhas de SHOW GRANTS, ele classifica o
linhas também, exceto que sempre imprime a linha com a senha do usuário primeiro, se
existe. Isso remove três tipos de inconsistência que você obterá executando SHOW GRANTS,
e evita changesets espúrios no controle de versão.
Terceiro, se você quiser diferenciar as concessões entre os servidores, será difícil sem "canonizar"
eles, que o pt-show-grant faz. A saída é totalmente diff-capaz.
Com o "--revoke", "--separate" e outras opções, pt-show-grant também torna mais fácil
revogar privilégios específicos dos usuários. Caso contrário, isso é tedioso.
OPÇÕES
Esta ferramenta aceita argumentos de linha de comando adicionais. Consulte o "SINOPSE" e uso
informações para detalhes.
--pergunta-passa
Solicita uma senha ao se conectar ao MySQL.
--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.
--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
O banco de dados a ser usado para a conexão.
--defaults-file
forma abreviada: -F; tipo: string
Leia apenas as opções do mysql do arquivo fornecido. Você deve fornecer um nome de caminho absoluto.
--derrubar
Adicione DROP USER antes de cada usuário na saída.
--rubor
Adicione FLUSH PRIVILEGES após a saída.
Você pode precisar disso em servidores pré-4.1.1 se quiser descartar um usuário completamente.
--[nenhum cabeçalho
padrão: sim
Imprimir cabeçalho de despejo.
O cabeçalho precede as concessões despejadas. Parece:
- Concessões descartadas por pt-show-grant 1.0.19
- Despejado do servidor Localhost via socket UNIX, MySQL 5.0.82-log em 2009-10-26 10:01:04
Consulte também "- [sem] carimbo de data / hora".
--Socorro
Mostre ajuda e saia.
--hospedeiro
forma abreviada: -h; tipo: string
Conecte-se ao host.
--ignorar
tipo: array
Ignore esta lista de usuários separados por vírgulas.
--só
tipo: array
Mostrar apenas concessões para esta lista de usuários separados por vírgulas.
--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.
--porta
forma abreviada: -P; tipo: int
Número da porta a ser usada para conexão.
--revogar
Adicione instruções REVOKE para cada instrução GRANT.
--separado
Liste cada GRANT ou REVOKE separadamente.
A saída padrão do comando SHOW GRANTS do MySQL lista muitos privilégios em um único
linha. Com "--flush", coloca um FLUSH PRIVILEGES após cada usuário, em vez de uma vez em
o fim de toda a saída.
--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.
--tomada
formas curtas; tipo: string
Arquivo de soquete a ser usado para conexão.
- [não] carimbo de data / hora
padrão: sim
Adicione carimbo de data / hora ao cabeçalho de despejo.
Veja também "- [no] cabeçalho".
--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.
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
dsn: conjunto de caracteres; cópia: sim
Conjunto de caracteres padrão.
·D
dsn: banco de dados; cópia: sim
Banco de dados padrão.
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.
· 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.
· você
dsn: usuário; cópia: sim
Usuário para login, se não for o usuário atual.
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-show-concede ...> 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-show-grantp online usando serviços onworks.net