Como encontrar um valor em um arquivo .DB?

1

Estou tentando encontrar dados de atalho no arquivo settings.db para TS3 . Quando eu abro o arquivo .DB no NotePad ++ e clico em CTRL + F e digito " SCROLL ", você encontrará os dados da tecla de atalho. Sempre que eu edito qualquer coisa no arquivo .DB usando o NotePad ++ , o arquivo fica corrompido, então eu preciso editá-lo usando um visualizador / editor real de arquivos .DB.
Estou usando o Navegador de banco de dados para SQLite

Procurei em todos os lugares neste arquivo e não consigo encontrar os dados da tecla de atalho. Não há Control + F no Navegador do banco de dados, o que o torna 10x mais difícil.

Alguém pode me ajudar a encontrar os dados da tecla de atalho neste arquivo?

DOWNLOAD

    
por Josh Silveous 07.03.2017 / 16:10

2 respostas

1

Estou expandindo meus comentários para uma resposta, o ponto principal é que, embora eu concorde com Alex em tudo o que ele escreve, reconheço que um usuário do Windows pode ser melhor usando ferramentas gráficas.

Como abrir, navegar e editar um arquivo .DB Sqlite

Os bancos de dados Sqlite não são arquivos de texto simples e precisam ser manipulados com um software específico. Se você estiver usando o Firefox, eu recomendaria o add-on Gerenciador de SQLite , caso contrário, há o excelente DB Browser para SQLite , disponível para Windows, Mac e Linux e até mesmo como um aplicativo portátil. É isso que o OP já está usando.

Com qualquer um desses programas, você pode se conectar (ou abrir) um arquivo SQLite e, em seguida, navegar, pesquisar e editar seu conteúdo. Se você fez alguma alteração, pode salvá-las no arquivo original e está pronto.

Como encontrar um valor em um banco de dados

Pesquisas simples em bancos de dados são feitas em uma coluna em uma tabela. Isso significa que você precisa saber de antemão qual tabela contém os dados que está procurando, selecioná-los e executar a consulta em uma de suas colunas. O software gerenciador de banco de dados, tanto gráfico como de linha de comando, geralmente seguirá esse padrão.

Mas e se você não souber de antemão onde a string que você está procurando poderia ser? Como procurar por uma sequência específica em qualquer lugar do banco de dados inteiro? A maneira mais fácil é transformar o banco de dados em um arquivo de texto simples e pesquisar nele. Isso pode revelar todas as ocorrências de uma determinada string e nos permitirá saber quais tabelas e colunas são relevantes para que possamos voltar e trabalhar nelas com a ferramenta de gerenciamento de nossa escolha. Como alternativa, poderíamos editar cuidadosamente o banco de dados exportado e, em seguida, reimportá-lo para o formato de arquivo .DB original.

Quase toda ferramenta do gerenciador de banco de dados tem uma função de exportação (ou dump) e de importação que fará exatamente isso.

Específico: encontrar "SCROLL em este arquivo - falhou

Seguindo os métodos mencionados acima, não consegui encontrar a string "SCROLL no arquivo arquivo fornecido pelo OP. O que mais me impressiona é que o arquivo .DB original o contém (quando visto como texto) e o SQL exportado não o contém; quando, no entanto, é reimportado de volta para o formato .DB, o novo arquivo contém-lo (novamente, quando visto como texto). A explicação está além de mim no momento.

    
por 08.03.2017 / 10:50
1

O banco de dados SQLite está em formato binário, você não pode acessá-lo diretamente com o editor de texto. Se você quiser ver o conteúdo do banco de dados como um texto, você precisa exportá-lo como arquivo de despejo SQL:

Execute cmd (console da linha de comando) e navegue até a pasta (com cd command) com o arquivo de banco de dados e execute o seguinte comando (substitua database-file.db pelo arquivo real)

 sqlite3 database-file.db .dump > database-file.txt

Você pode baixar o utilitário de linha de comando sqlite3 aqui

Depois disso, você pode explorar esse arquivo database-file.txt com o Notepad ++.

Se você editou o arquivo SQL despejado e deseja torná-lo novamente como banco de dados SQLite, use isto:

 sqlite3 database-file.db < database-file.txt

P.S.

Em relação aos dados do HotKey que você está procurando dentro do banco de dados que você referenciou, os únicos registros relacionados ao HotKey são:

INSERT INTO "Application" VALUES(1488894941,'HotkeyMode','2');
INSERT INTO "Application" VALUES(1488894941,'HotkeyProfile','160cc86f-8082-4bad-afbd-7ae9b96482ca');
INSERT INTO "Global" VALUES(1488894937,'HotkeyDialog','297 433');
INSERT INTO "Connecting" VALUES(1487550188,'LastUsedServerHotkeyProfile','160cc86f-8082-4bad-afbd-7ae9b96482ca');

Se você não conhece os aspectos internos do TeamSpeak, o que significa 'HotkeyMode','2' e 'HotkeyProfile','160cc86f-8082-4bad-afbd-7ae9b96482ca' , então não seria tão fácil mudar algo que você deseja

    
por 07.03.2017 / 16:39

Tags