Je cherche une liste de mots du dictionnaire anglais pour une application de mot de passe que je travaille dessus. Idéalement, la liste peut être facilement insérée dans une base de données mysql. Des suggestions?Base de données MySQL de mots anglais?
Répondre
La plupart des systèmes Unix ont un ensemble de listes de mots, dans mon système Ubuntu, il est sur/usr/share/dict/american-anglais
Un seul mot vient par ligne, il est donc facile d'insérer si vous avez vraiment Je le veux dans une base de données.
Ce bash oneliner le fait inefficacement:
cat /usr/share/dict/american-english \
| while read i; do echo insert into wordlist\(word\) VALUES \(\"$i\"\); done \
| mysql -u<user> -p<pass> <db>
Cette commande MySQL fait efficacement (si le fichier est dans la même machine):
LOAD DATA LOCAL INFILE '/usr/share/dict/american-english' INTO TABLE wordlist;
Pour importer une liste de mots à MySQL, utiliser
Où words
est une table à une seule colonne.
Upvoted, édité ma réponse pour l'incorporer! –
Juste pour ajouter à quelqu'un qui a fait un googled ici: pour l'insérer dans un tableau à plusieurs colonnes, vous pouvez utiliser 'LOAD DATA LOCAL INFILE '/ usr/share/dict/words' INTO TABLE mots (colonne);' where column is a varchar champ dans lequel vous voulez stocker les mots. – stormbreaker
Je trouve ceci: MySQL formatted english words list
dunno beaucoup sur combien de mots ne sont pas en mais il y a une liste énorme de toute façon :)
Il y a environ 128/129K mots il et des mots plus de 10 lettres ont été enlevé.
- 1. Mots en anglais naturels
- 2. Base de données gratuite des fréquences de mots de Google?
- 3. Impossible de combiner les mots anglais de lettres par Ruby
- 4. Existe-t-il un dictionnaire ou une base de données de mots anglais avec chaque mot séparé par des syllabes?
- 5. Vérification des mots de passe contre la base de données de mots sur le serveur ou utiliser un service Web?
- 6. Configuration de base de données MySQL dans une classe séparée
- 7. Mail vers la base de données MySQL
- 8. Codeigniter security - base de données mysql
- 9. Comment archiver une base de données MySQL?
- 10. Comment supprimer une base de données MySQL?
- 11. restaurer la base de données mysql
- 12. MySQL compte les mots correspondants
- 13. enregistrements datewise trier/extraire de grande base de données mySQL
- 14. Classer les mots anglais en rares et communs
- 15. Sauvegarde de base de données d'une base de données mysql dans VB.Net
- 16. transfering MySQL Les enregistrements de base de données à la base de données
- 17. Copier la base de données de la base de données Mysql
- 18. convertir des données en base de données mysql
- 19. Importer un vidage XML de Wikipédia non-anglais dans MySQL?
- 20. Question de conception de base de données MySQL Drupal
- 21. Récupération de la base de données de MySQL vers SQLite
- 22. Synchronisation d'une base de données client SQLite avec une base de données MySQL
- 23. Sélection de X mots d'un champ de texte dans MySQL
- 24. Constructeur de base de données du schéma MySQL
- 25. Taille de table maximale pour une base de données MySQL
- 26. Comparez les 2 schémas de base de données sur Mysql
- 27. MySQL Cluster gère une base de données de téraoctets
- 28. Comptage de plusieurs entrées dans une base de données MySQL?
- 29. Comment configurer la relation de base de données MySQL
- 30. Appel d'un champ de la base de données dans MySQL
Mon système a aussi un fichier appelé 'cracklib-small' dans'/usr/share/dict/'. Il contient 53k mots alors que le fichier anglais américain a 99k mots. Alors que cracklib est plus petit, le fichier anglais contient des mots comme 'émigré' qui seraient terribles pour les mots de passe, donc si l'objectif est la génération de mot de passe style diceware, vous pouvez utiliser le dictionnaire cracklib à la place. – Nick