
Hej, Habr! Sandsynligvis har vi alle en fil, hvor vi gemmer noget nyttigt og interessant for os selv. Nogle links til artikler, bøger, repositories, manualer. Det kan være bogmærker i browseren eller endda bare åbne faner, som vi efterlader til senere. Over tid vokser alt dette, links holder op med at fungere, og størstedelen af materialet bliver ganske enkelt forældet.
Hvad hvis vi deler dette gode med fællesskabet og uploader denne fil til GitHub? Så kan dit arbejde være nyttigt for andre, og det kan være nemmere at holde det aktuelt i fællesskab ved at modtage opdateringer fra dem, der ønsker det via de gamle gode PR’er. Det er netop til dette, at projektet er skabt. . Det er blandt de 10 bedste repositories på GitHub, har 138K stjerner, og linket til dit arbejde kan endda findes direkte i dets rod README, hvilket vil tiltrække et stort publikum til dit kreative arbejde. Dog kræver det en smule indsats. Jeg vil gerne dele mine erfaringer med sådanne bestræbelser med dig.
Mit navn er Maxim Gramin. Jeg arbejder med Java-udvikling og forskning inden for databaser hos KROK. I dette indlæg vil jeg fortælle, hvad Awesome Lists er, og hvordan man laver sit eget officielle awesome-repo.
Hvad er Awesome Lists
Når jeg skal forstå en ny teknologi eller programmeringssprog, går jeg altid først herhen — jeg finder den relevante sektion og i den de passende lister. Og ifølge antallet af stjerner og deres konstante vækst, gør jeg det ikke alene.

I virkeligheden er det en almindelig flad readme.md, som lever i en separat , og det indtager 8. pladsen blandt alle GitHub-repositories og omfatter links til andre lister, der er dedikeret til et bestemt emne. For eksempel i sektionen Programmeringssprog kan man finde lister som Awesome Python og Awesome Go, mens der i Front-End Development er et væld af ressourcer til WEB-udvikling. Og selvfølgelig — sektionen (den vender vi tilbage til lidt senere). Og ja, alt dette er ikke kun begrænset til tekniske emner. For eksempel kan man i sektionerne Entertainment og Gaming finde en masse interessante ting (personligt blev jeg glad for ).
Den vigtigste egenskab ved det hele er, at alle disse lister ikke føres af forfatteren personligt, men af fællesskabet og er sammensat i overensstemmelse med et særligt og meget strengt Hver sådan liste er et selvstændigt fællesskab af specialister, lever sit eget liv og er åben for dine pull requests, der vil gøre den endnu bedre. Enhver, der ønsker det, kan også lave sin egen liste, hvis et emne endnu ikke er blevet belyst.
Idémageren og koordinatoren af hele dette projekt er den legendariske Sindre Sørhus, , forfatter til mere , og det er ham, der vil modtage dine PR'er.

Sådan kommer du ind i awesome-list
Hvis du ikke lige har fundet den rigtige liste om det emne, du er interesseret i, er det første tegn på, at du selv skal lave det!
Jeg vil illustrere med mit eget projekt — I mine projekter arbejder jeg med de mest forskellige databaser, og derfor har jeg lavet en fil, hvor jeg samler nyttige værktøjer til arbejdet med dem, forskellige DB-migratorer, IDE'er, administrationspaneler, overvågningsværktøjer osv. Værktøjer, som jeg allerede har brugt, eller som jeg kun planlagde at begynde at anvende. Jeg delte denne fil med kolleger i KROK og uden for det. Det har hjulpet mange og været interessant. Til sidst ønskede jeg større berømmelse, da jeg en dag lagde mærke til, at der lige præcis ikke var en liste om databaser.
Hvad kræves der for dette?
- Vi registrerer et almindeligt GitHub-repo med navnet awesome-ting. I mit tilfælde var det awesome-database-tools.
- Vi tilpasser vores liste til awesome-formatet, og det vil , som vil generere alle de nødvendige filer i det ønskede format, hjælpe os.
- Vi indstiller CI på den ægte måde. og Travis CI vil hjælpe os med at kontrollere af vores liste.
- Vi venter i 30 dage.
- Vi laver review på mindst 2 andres PR'er.
- Og til sidst laver vi en PR i det centrale repo, hvor vi tilføjer et link til vores repo. Her er det vigtigt at læse alt grundigt igennem og nøje følge alle de mange krav til den nye liste og selve PR'en.
Min første pandekage

Men der gik lidt tid, jeg samlede endnu mere materiale, arbejdede på fejlene og tog mod til mig til en .
Men jeg glemte én meget vigtig ting, som jeg blev blidt mindet om:

Jeg var ikke særlig opmærksom og glemte at tilføje en enhjørning som bevis på, at alle betingelser var opfyldt.

Efter lidt tid, med flere rettelser baseret på kommentaren, kom den ventede om at min PR var blevet accepteret.
Sådan blev jeg forfatter til mit første ark, og jeg begyndte at modtage fra fællesskabet til tilføjelse af nye værktøjer. Og mange af dem er allerede inkluderet i . Hvis du ikke gider at følge linket,
her er et aktuelt udvalg på tidspunktet for offentliggørelsen af indlægget
Awesome Database Tools,
Fællesskabsdrevet liste over databaseværktøjer
Her vil vi indsamle information om fantastiske nyttige og eksperimentelle værktøjer, der forenkler arbejdet med databaser for DBA’er, DevOps, udviklere og almindelige mennesker.
Du er velkommen til at tilføje information om dine egne db-værktøjer eller dine yndlings tredjeparts db-værktøjer.
Indhold
IDE
- — Premier multifunktionelt administrationsværktøj til databaseadministration, kontrol og udvikling.
- — Aqua Data Studio er produktivitetssoftware til databaseudviklere, DBA’er og analytikere.
- — Flere databaseadministrationsværktøjer med støtte til 20+ databaser.
- — Cross-platform IDE til databaser & SQL fra JetBrains.
- — Gratis universelt databaseadministrations- og SQL-klientværktøj.
- — Universel IDE til MySQL og MariaDB databaseudvikling, administration og ledelse.
- — Kraftfuld IDE til Oracle-administration, ledelse og udvikling.
- — GUI-værktøj til administration og udvikling af databaser og objekter.
- — Kraftfuld integreret udviklingsmiljø til SQL Server-udvikling, administration, dataanalyse og rapportering.
- — Moderne (JavaScript/Electron framework), open source IDE til MongoDB. Det har funktioner til at understøtte udvikling, administration og ydelsestuning på MongoDB-databaser.
- — Omfattende GUI-værktøj til Firebird og InterBase.
- — En letvægtsklient til administration af MySQL, MSSQL og PostgreSQL, skrevet i Delphi.
- — MySQL Workbench er et samlet visuelt værktøj for databasearkitekter, udviklere og DBA’er.
- — Et databaseudviklingsværktøj, der giver dig mulighed for at oprette forbindelse til MySQL, MariaDB, SQL Server, Oracle, PostgreSQL og SQLite-databaser fra en enkelt applikation.
- — Oracle SQL Developer er et gratis, integreret udviklingsmiljø, der forenkler udvikling og administration af Oracle Database både i traditionelle og cloud-udrulninger.
- — Den mest populære og funktionsrige open source administrations- og udviklingsplatform til PostgreSQL, den mest avancerede open source-database i verden.
- — Langtidsstøtte til pgAdmin3.
- — IDE der specifikt er rettet mod udviklingen af lagrede programenheder til Oracle-databaser.
- — Komplet og kraftfuld databaseadministrations-, ledelses- og udviklingsværktøj til PostgreSQL.
- — Toad er den førende databasesoftware til udviklere, administratorer og dataanalytikere. Håndter komplekse databaseændringer med et enkelt databaseadministrationsværktøj.
- — Forenklet databaseudviklingsværktøj til MySQL og Postgres.
- — TOra er et open source SQL IDE til Oracle, MySQL og PostgreSQL db'er.
- — Opret, administrer, forespørg og udforsk Valentina DB, MySQL, MariaDB, PostgreSQL og SQLite databaser gratis.
GUI-administratorer/kunder
- — Databaseadministration i en enkelt PHP-fil.
- — Universelt databaseværktøj til udviklere, DBA'er og analytikere.
- — Enterprise ClickHouse Ops UI til at køre forespørgsler, overvåge ClickHouse sundhed og lave mange andre ting.
- — Direkte SQL-adgang til alle dine data, uanset hvor de befinder sig.
- — Webværktøj til databaseadministration.
- — Webbaseret databasebrowser til PostgreSQL, skrevet i Go og fungerer på macOS, Linux og Windows-maskiner.
- — Webbaseret SQLite database administrationsværktøj skrevet i PHP med support for SQLite3 og SQLite2.
- — En webgrænseflade til MySQL og MariaDB.
- — PSequel giver en ren og simpel grænseflade til at udføre almindelige PostgreSQL-opgaver hurtigt.
- — Moderne, samarbejdende SQL-editor til dit team.
- — En moderne PostgreSQL-klient til Mac.
- — Robo 3T (tidligere Robomongo) er et shell-centrisk tværgående MongoDB-administrationsværktøj.
- — Sequel Pro er en hurtig, nem at bruge Mac-databaseadministrationsapplikation til at arbejde med MySQL & MariaDB databaser.
- — Et data-administrationsværktøj, der gør det muligt at arbejde med SQL Server, Azure SQL DB og SQL DW fra Windows, macOS og Linux.
- — Grafisk grænseflade understøtter alle SQLite-funktioner.
- — Webbaseret SQL-editor, der kører i din egen private sky.
- — En simpel, kraftfuld Postgres-manager til macOS.
- — Grafisk SQL-klient skrevet i Java, der giver dig mulighed for at se strukturen i en JDBC-kompatibel database, browse data i tabeller, udstede SQL-kommandoer osv.
- — Databaseadministration for VSCode.
- — Den mest komplette og nemt at bruge MySQL GUI.
- — SQL-editor & open source simpel business intelligence for Clickhouse.
- — Moderne, native og venlig GUI-værktøj til relationelle databaser: MySQL, PostgreSQL, SQLite & mere.
- — PostgreSQL Web Administration GUI — brug dine PostgreSQL-databaser fra hvor som helst med en rig, lynhurtig AJAX-webgrænseflade.
CLI-værktøjer
- — Tilslut til en database for at udstede SQL-kommandoer inden for IPython eller IPython Notebook.
- — En CLI til Redis med autocompletion og syntaksfremhævelse.
- — Top-lignende administrationsværktøj til PostgreSQL.
- — Top-lignende applikation til overvågning af PostgreSQL-serveraktivitet.
- — ‘top’ til PostgreSQL.
- — Postgres Pager.
- — Oracle SQL Developer Command Line (SQLcl) er en gratis kommandolinjegrænseflade til Oracle Database.
- — En universel kommandolinjegrænseflade til PostgreSQL, MySQL, Oracle Database, SQLite3, Microsoft SQL Server, inklusive NoSQL og ikke-relationelle databaser!
dbcli
- — AthenaCLI er et CLI-værktøj til AWS Athena-tjenesten, der kan gøre autocompletion og syntaksfremhævelse.
- — CLI til SQLite-databaser med autocompletion og syntaksfremhævelse.
- — En kommandolinje-klient til SQL Server med autocompletion og syntaksfremhævelse.
- — En terminalklient til MySQL med autocompletion og syntaksfremhævelse.
- — Postgres CLI med autocompletion og syntaksfremhævelse.
- — Vertica CLI med autocompletion og syntaksfremhævelse.
DB-schema navigation og visualisering
- — Hurtigt og enkelt værktøj til at hjælpe dig med at tegne dine databaserelationsdiagrammer og flows hurtigt med et simpelt DSL-sprog.
- — Værktøj til generation af entitetsrelations-diagrammer.
- — Et gratis værktøj til database-schemaopdagelse og forståelse.
- — Generering af din database til HTML-dokumentation, herunder entitetsrelationsdiagrammer.
- — CI-venligt værktøj til dokumentation af en database, skrevet i Go.
Modeler
- — Et kraftfuldt og omkostningseffektivt værktøj til database design, der hjælper dig med at opbygge høj-kvalitets konceptuelle, logiske og fysiske datamodeller.
- — Oracle SQL Developer Data Modeler er et gratis grafisk værktøj, der øger produktiviteten og forenkler datamodelopgaver.
- — Datamodeleringsværktøj designet til PostgreSQL.
Migreringsværktøjer
- — Database konfigurations-som-kode værktøj, der anvender konceptet med idempotente DDL-scripts.
- — Værktøj til database-migrering.
- — Online schema-migrering for MySQL.
- — Database-uafhængig biblioteks for sporing, styring og anvendelse af ændringer i databaseskemaer.
- — Ligesom diff, men til PostgreSQL-skemaer.
- — Node.js database migrationsstyring bygget udelukkende til postgres. (Men kan også bruges til andre databaser, der overholder SQL-standarden — f.eks. CockroachDB.)
- — Tilbyder værktøjer til at beskrive et PostgreSQL-databaseskema som YAML.
- — En Kubernetes-operator til deklarativ database-schemas styring (gitops for databaseskemaer).
- — Fornuftig database-native ændringsstyring til ramme-fri udvikling og pålidelig udrulning.
- — Endnu et skemaversionerings- og migrationsværktøj lavet med native .NET Core 3.0+ og forhåbentlig bedre.
Kodegenereringsværktøjer
- — Afleder SQL DDL (Data Definition Language) fra tabeldata.
- — Kommandolinjeværktøj til eksport af Oracle-skema til en række ddl-init scripts med mulighed for at filtrere uønsket information, adskille DDL i forskellige filer, og formatere output pænt.
Wrapper
- — Et open source REST API backend til mobile, web- og IoT-applikationer.
- — Lynhurtige, øjeblikkelige realtime GraphQL APIs på Postgres med finmasket adgangskontrol, der også udløser webhooks ved databasesbegivenheder.
- — SQL til JSON og CSV-streams.
- — PostgreSQL fremmed datavrider til MySQL.
- — En mid-tier Java-applikation, ORDS kortlægger HTTP(S) udsagn (GET, POST, PUT, DELETE osv.) til databasetransaktioner og returnerer eventuelle resultater formateret i JSON.
- — Prisma forvandler din database til en realtime GraphQL API.
- — REST API for enhver Postgres-database.
- — Er en måde at levere en RESTful API fra enhver database skrevet i Go.
- — SQL-generator med Java og HTTP APIs, bruger en simpel RESTful HTTP API med XML eller JSON serialisering.
- — Konverter let din SQL-database til en REST API.
- — Generer automatisk en RESTful API-tjeneste til din gamle database.
- — Avanceret REST- og UI-wrapper til dine SQL-forespørgsler.
Backupværktøjer
- — Pålidelig PostgreSQL Backup & Restore.
- — Backup and Recovery Manager for PostgreSQL.
Replikering/databehandling
- — Et værktøj til at udforske og publicere data.
- — Distribueret Data Transfer Service til MySQL.
- — Synkroniser Postgres-data mellem databaser.
- — MySQL til PostgreSQL replicasystem skrevet i Python 3. Systemet bruger biblioteket mysql-replication til at trække rækkenbilleder fra MySQL, som gemmes i PostgreSQL som JSONB.
- — En Golang webserver til at streame Postgres-ændringer mindst én gang over websockets, ved hjælp af Postgres logiske dekodningsfunktion.
- — Den mest populære replikeringsmanager til PostgreSQL.
Scripts
- — En samling af nyttige små scripts til databaseanalyse og administration, lavet af vores team hos PostgreSQL Experts.
- — Forespørgsler til at måle statistisk oppustning i indekser og tabeller for PostgreSQL.
- — SQL-test der tjekker, om din database følger reglerne fra .
- — Nyttige PostgreSQL-værktøjer.
- — Nyttige SQL-scripts og kommandoer af .
- — Det manglende sæt af nyttige værktøjer til Postgres DBAs og alle ingeniører.
- — Nyttige PostgreSQL-forespørgsler og -kommandoer.
- — Disse sqlplus-scripts er til Oracle Database ydeevneoptimering & troubleshooting.
Overvågning/statistik/ydeevne
- — Giver en grafisk visning af aktive session historie data inden for Oracle og PostgreSQL DB.
- — Agentfri & omkostningseffektiv MySQL Overvågningsværktøj.
- — Overvåg din SQL Server på Linux ydeevne ved hjælp af collectd, InfluxDB og Grafana.
- — Et sikkert, simpelt og agentfrit fjernserverovervågningsværktøj, der er pakket med kraftfulde funktioner for at gøre din overvågning så effektiv som muligt.
- — Open source platform til at håndtere og overvåge MySQL og MongoDB ydeevne.
- — Pganalyze statistikindsamler til indsamling af PostgreSQL metrics og logdata.
- — Diagnoseredskab af ny generation, der giver brugerne mulighed for at udføre en dyb analyse af helbredet for Postgres-databaser.
- — Prometheus eksportør til PostgreSQL server metrics.
- — Mål og spore hver aspekt af dine PostgreSQL databaser.
- — Et ydeevnedashboard for Postgres — helbredstjek, foreslåede indekser og mere.
- — Indsamler og viser information og statistik fra en kørende PostgreSQL server.
- — Brugergrænseflade til Postgres forklaringsplaner, plus tips til at forbedre ydeevnen.
- — Indsamler PostgreSQL statistik og gemmer dem enten i CSV-filer eller udskriver dem til stdout.
- — Fleksibel, selvstændig løsning til overvågning/dashboarding af PostgreSQL metrics.
- — Leverer metrics for din postgres-database.
Zabbix
- — Overvågningsagent for PostgreSQL.
- — Orabbix er et plugin designet til at arbejde med Zabbix Enterprise Monitor for at levere flerlagsovervågning, ydeevne og tilgængelighedsrapportering og måling for Oracle-databaser, sammen med serverens ydeevnemetrics.
- — Dette er Zabbix overvågningsskabelon til PostgreSQL Database.
- — Python-script til at overvåge Oracle-databaser.
- — ZabbixDBA er et hurtigt, fleksibelt og kontinuerligt udviklende plugin til overvågning af din RDBMS.
Testning
- — Et database testframework, der understøtter nem testdrevet udvikling af din databasekode.
- — Regressionstest af dine SQL-forespørgsler.
Datagenerator
- — Det er et framework til at generere realistiske og gyldige testdata i høj volumen til dit system under test (undgå Datalite anti-mønsteret).
- — Kraftfuldt GUI-værktøj til at skabe massive mængder af realistiske testdata.
- — Lille men mægtig GUI-værktøj til at befolke Oracle-skemaer med tons af realistiske testdata.
- — Kraftfuldt GUI-værktøj til hurtig generation af meningsfulde testdata til databaser.
Administration
- — En hurtig PostgreSQL loganalytiker.
- — Administrer et Postgres-klyngetænkningens roller, rolle-medlemskaber, skemaejerskab og privilegier.
- — Postgres-partitionering så let som en leg.
HA/failover/sharding
- — Postgres-udvidelse der distribuerer dine data og dine forespørgsler på tværs af flere noder.
- — En skabelon til PostgreSQL høj tilgængelighed med ZooKeeper, etcd eller Consul.
- — En høj skalerbarhedsløsning til MySQL-klyngedannelse og høj tilgængelighed.
- — Cloud-native PostgreSQL manager til PostgreSQL høj tilgængelighed.
- — Postgres-udvidelse og service til automatiseret failover og høj tilgængelighed.
- — PostgreSQL replikationsovervågning og failover dæmon.
- — Høj tilgængelighed for Postgres, baseret på branchehenvisninger Pacemaker og Corosync.
- — PostgreSQL høj-tilgængelighedsklynge (baseret på "Patroni" og "DCS(etcd)"). Automatisering af implementering med Ansible.
- — Databaseklyngesystem til horisontal skalering af MySQL gennem generaliseret sharding.
Kubernetes
- — Gør det nemt at køre produktionskvalitetsdatabaser på Kubernetes.
- — Postgres Operator muliggør høj-tilgængelige PostgreSQL-klynger på Kubernetes (K8s) drevet af Patroni.
- — HA PostgreSQL-klynger med Docker.
- — Enterprise-grade, Full Stack PostgreSQL på Kubernetes.
Konfigurationsjustering
- — Script skrevet i Perl, der giver dig mulighed for hurtigt at gennemgå en MySQL-installation og foretage justeringer for at øge ydeevnen og stabiliteten.
- — Gratis online værktøj til at generere en optimeret
postgresql.conf. - — PostgreSQL konfigurationswizard.
- — Simpelt script til at analysere din PostgreSQL-databasekonfiguration og give tuningråd.
DevOps
- — DBmaestro accelererer udgivelsescyklusser og understøtter smidighed i hele IT-økosystemet.
- — Toad DevOps Toolkit udfører centrale databaseudviklingsfunktioner inden for din DevOps arbejdsgang — uden at kompromittere kvalitet, ydeevne eller pålidelighed.
Schemaeksempler
- — Oracle Database Sample Schemas.
Rapportering
- — En brugervenlig SQL-rapporteringsapplikation designet til SQL-elskere.
Distributioner
- — Værktøj der nemt udruller MySQL database-servere.
- — PowerShell-modul, der kan opfattes som en kommandolinje SQL Server Management Studio.
- — Funktionel PostgreSQL-installation pakket som en standard Mac-app.
- — En udvikler-venlig distribution af Postgres.
- — Web-baseret PostgreSQL administrationsgrænseflade, der samler flere værktøjer og applikationer til brug med PostgreSQL.
Sikkerhed
- — Databasesikkerhedssuite. Databaseproxy med felt-niveau kryptering, søgning gennem krypterede data, beskyttelse mod SQL-injektioner, indtrængningsdetektion, honeypots. Understøtter klient-side og proxy-side ("gennemsigtig") kryptering. SQL, NoSQL.
Kodeformatteringsværktøjer
- — Sprog-agnostisk flot udskrivning gennem maskinlæring.
Bidragende
- Dine bidrag er altid velkomne! Læs venligst først.
Der er fund til databaser — del venligst. Jeg vil også være glad for at modtage feedback — PR'er og stjerner. Har du spørgsmål til oprettelsen af dine egne lister — skriv også.
Kilde: habr.com
