Geweldig doe-het-zelf-blad, of GitHub in plaats van kladblok
Hallo, Habr! Waarschijnlijk heeft ieder van ons een bestand waarin we iets nuttigs en interessants voor onszelf verbergen. Enkele links naar artikelen, boeken, repositories, handleidingen. Dit kunnen browserbladwijzers zijn of zelfs gewoon geopende tabbladen die voor later zijn achtergelaten. Na verloop van tijd zwelt dit allemaal op, worden links niet meer geopend en raken de meeste materialen eenvoudigweg verouderd.
Wat als we deze goedheid met de gemeenschap delen en dit bestand op GitHub plaatsen? Dan kan uw werk nuttig zijn voor iemand anders, en kunt u samen de relevantie behouden door updates te accepteren van degenen die dat wensen via goede oude PR's. Dit is precies waarvoor het project is ontworpen. Geweldige lijsten. Het is opgenomen in de TOP 10 GitHub-repository's, heeft 138 sterren en een link naar je werken kan direct in de root README verschijnen, wat een groot publiek naar je werk zal trekken. Toegegeven, dit zal een beetje inspanning vergen. Ik wil mijn ervaring met dergelijke inspanningen met u delen.
Mijn naam is Maxim Gramin. Bij CROC doe ik Java-ontwikkeling en databaseonderzoek. In dit bericht zal ik je vertellen wat Awesome Lists zijn en hoe je je eigen officiële geweldige repository kunt maken.
Wat zijn geweldige lijsten
Als ik een nieuwe technologie of programmeertaal moet ontdekken, ga ik eerst hierheen. Ik vind de juiste sectie en er zitten geschikte bladen in. En afgaande op het aantal sterren en hun constante groei, ben ik niet de enige die dit doet.
In feite is dit een gewone platte readme.md, die in een aparte map leeft opslagplaatsen, staat op de 8e plaats van alle GitHub-repository's en bevat links naar andere werkbladen die over welk onderwerp dan ook gaan. In de sectie Programmeertalen kun je bijvoorbeeld bladen vinden over Awesome Python en Awesome Go, en Front-End Development heeft een enorme hoeveelheid bronnen over WEB-ontwikkeling. En natuurlijk - sectie databases (Hier komen we later op terug). En ja, dit alles beperkt zich niet tot technische onderwerpen. In de secties Entertainment en Gaming kun je bijvoorbeeld ook veel interessante dingen vinden (ik was persoonlijk tevreden). geweldige fantasie).
Het belangrijkste kenmerk is dat al deze bladen niet door de auteur persoonlijk worden onderhouden, maar door de gemeenschap, en worden samengesteld in overeenstemming met een speciale en zeer strikte geweldig manifest. Elk van deze bladen is een onafhankelijke gemeenschap van specialisten, leeft zijn eigen leven en staat open voor uw pull-verzoeken die het nog beter zullen maken. En iedereen kan ook zijn eigen werkblad maken als een onderwerp nog niet aan bod is gekomen.
De auteur van het idee en coördinator van deze hele onderneming is de legendarische Sindre Sorhus, eerste persoon op GitHub, auteur meer 1000 NPM-modules, en hij is het die uw PR's zal ontvangen.
Hoe kom je in de geweldige lijst?
Als je plotseling geen geschikt blad hebt gevonden over een onderwerp dat je interesseert, dan is dit het eerste teken dat je het zelf moet maken!
Ik zal het je vertellen aan de hand van het voorbeeld van mijn geesteskind. Geweldige databasetools — Van project tot project moet ik met een verscheidenheid aan databases werken, en daarom ben ik een bestand begonnen waarin ik nuttige tools verzamelde om ermee te werken, allerlei databasemigratieprogramma's, IDE's, beheerderspanelen, monitoringtools en allerlei soorten dingen. diversen. Tools die ik al heb gebruikt of net van plan ben te gaan gebruiken. Ik heb dit bestand gedeeld met collega's bij CROC en daarbuiten. Dit heeft veel mensen geholpen en was interessant. Als gevolg hiervan wilde ik meer bekendheid toen ik op een dag merkte dat er in de sectie Databases geen blad over dit onderwerp was. En ik besloot de mijne daar toe te voegen.
Wat heb ik nodig?
We registreren een reguliere GitHub-repository met een naam als awesome-wat dan ook. In mijn geval waren het geweldige databasetools
We brengen ons blad naar het geweldige formaat, dit zal ons helpen generator-geweldige-lijst, waarmee alle benodigde bestanden in het vereiste formaat worden gegenereerd
Een echt CI opzetten. geweldig-lint en Travis ci zal ons helpen onder controle te houden Geldigheid ons blad
Wij wachten 30 dagen
We beoordelen de PR's van minimaal 2 anderen
En ten slotte maken we een PR naar de hoofdrepository, waar we een link naar onze repository toevoegen. Hier moet je alles aandachtig lezen en zorgvuldig voldoen aan alle talrijke vereisten voor het nieuwe blad en de PR zelf.
Maar er ging een tijdje voorbij, ik verzamelde nog meer materiaal, werkte aan fouten en durfde het aan tweede poging.
Maar ik vergat iets heel belangrijks, waar ik zachtjes op werd gezinspeeld:
Ik was niet erg voorzichtig en voegde geen eenhoorn toe om te bevestigen dat aan alle voorwaarden was voldaan
Toen verstreek er nog wat tijd, nog een paar bewerkingen op basis van opmerkingen en het langverwachte gekwetterdat mijn PR werd geaccepteerd.
Dus ik werd de auteur van mijn eerste blad en ze begonnen te ontvangen PR's van de community om nieuwe tools toe te voegen. En een groot deel daarvan is al opgenomen Geweldige databasetools. Als je te lui bent om de link te volgen,
hier is de huidige selectie op het moment van publicatie van het bericht
Geweldige databasetools
Door de gemeenschap aangestuurde lijst met databasetools
Hier zullen we informatie verzamelen over geweldige nuttige en geweldige experimentele tools die vereenvoudigen met databases voor DBA, DevOps, ontwikkelaars en gewone stervelingen.
Voeg gerust informatie toe over uw eigen db-tools of uw favoriete db-tools van derden.
dbForge Studio voor SQL Server — Krachtige geïntegreerde ontwikkelomgeving voor de ontwikkeling, het beheer, het beheer, de gegevensanalyse en de rapportage van SQL Server.
db Koda — Modern (JavaScript/Electron-framework), open source IDE voor MongoDB. Het heeft functies ter ondersteuning van de ontwikkeling, het beheer en het afstemmen van prestaties op MongoDB-databases.
IB Expert — Uitgebreide GUI-tool voor Firebird en InterBase.
HeidiSQL — Een lichtgewicht client voor het beheren van MySQL, MSSQL en PostgreSQL, geschreven in Delphi.
MySQL Workbench — MySQL Workbench is een uniforme visuele tool voor databasearchitecten, ontwikkelaars en DBA's.
navigatiesysteem — Een tool voor databaseontwikkeling waarmee u vanuit één applicatie tegelijkertijd verbinding kunt maken met MySQL-, MariaDB-, SQL Server-, Oracle-, PostgreSQL- en SQLite-databases.
Oracle SQL-ontwikkelaar — Oracle SQL Developer is een gratis, geïntegreerde ontwikkelomgeving die de ontwikkeling en het beheer van Oracle Database in zowel traditionele als cloud-implementaties vereenvoudigt.
pgAdmin — Het populairste en veelzijdige Open Source beheer- en ontwikkelingsplatform voor PostgreSQL, de meest geavanceerde Open Source-database ter wereld.
pgAdmin3 - Langdurige ondersteuning voor pgAdmin3.
PL / SQL-ontwikkelaar — IDE die specifiek gericht is op de ontwikkeling van opgeslagen programma-eenheden voor Oracle Databases.
PostgreSQL-maestro — Compleet en krachtig hulpmiddel voor databasebeheer, beheer en ontwikkeling voor PostgreSQL.
Pad — Toad is de belangrijkste databaseoplossing voor ontwikkelaars, beheerders en data-analisten. Beheer complexe databasewijzigingen met één databasebeheertool.
Pad rand — Vereenvoudigde tool voor databaseontwikkeling voor MySQL en Postgres.
TOra — TOra is een open source SQL IDE voor Oracle, MySQL en PostgreSQL dbs.
Valentina Studio — GRATIS Valentina DB-, MySQL-, MariaDB-, PostgreSQL- en SQLite-databases maken, beheren, opvragen en verkennen.
GUI-beheerders/klanten
beheerder — Databasebeheer in één enkel PHP-bestand.
DbVisualizer — Universele databasetool voor ontwikkelaars, DBA's en analisten.
HuisOps — Enterprise ClickHouse Ops UI waarmee u zoekopdrachten kunt uitvoeren, de gezondheid van ClickHouse kunt monitoren en veel anderen aan het denken kunt zetten.
JackDB — Directe SQL-toegang tot al uw gegevens, waar deze zich ook bevinden.
Pgweb — Webgebaseerde databasebrowser voor PostgreSQL, geschreven in Go en werkt op macOS-, Linux- en Windows-machines.
phpLiteAdmin — Webgebaseerde SQLite-databasebeheertool geschreven in PHP met ondersteuning voor SQLite3 en SQLite2.
phpMyAdmin — Een webinterface voor MySQL en MariaDB.
pvervolg — PSequel biedt een schone en eenvoudige interface waarmee u algemene PostgreSQL-taken snel kunt uitvoeren.
PopSQL — Moderne, samenwerkende SQL-editor voor uw team.
Postico - Een moderne PostgreSQL-client voor de Mac.
Robo3T — Robo 3T (voorheen Robomongo) is een shell-centrische, platformonafhankelijke MongoDB-beheertool.
Vervolg Pro — Sequel Pro is een snelle, gebruiksvriendelijke applicatie voor Mac-databasebeheer voor het werken met MySQL- en MariaDB-databases.
SQL Operations Studio — Een tool voor gegevensbeheer waarmee u kunt werken met SQL Server, Azure SQL DB en SQL DW vanuit Windows, macOS en Linux.
SQLite-expert — Grafische interface ondersteunt alle SQLite-functies.
sqlpad — Webgebaseerde SQL-editor die in uw eigen privécloud wordt uitgevoerd.
SQLPro — Een eenvoudige, krachtige Postgres-manager voor macOS.
Eekhoorn — Grafische SQL-client geschreven in Java waarmee u de structuur van een JDBC-compatibele database kunt bekijken, door de gegevens in tabellen kunt bladeren, SQL-opdrachten kunt geven, enz.
sqlcl — Oracle SQL Developer Command Line (SQLcl) is een gratis opdrachtregelinterface voor Oracle Database.
usql — Een universele opdrachtregelinterface voor PostgreSQL, MySQL, Oracle Database, SQLite3, Microsoft SQL Server, en vele andere databanken inclusief NoSQL en niet-relationele databases!
dbcli
athenakel — AthenaCLI is een CLI-tool voor de AWS Athena-service die automatische aanvulling en syntaxisaccentuering kan uitvoeren.
litecli - CLI voor SQLite-databases met automatische aanvulling en syntaxisaccentuering.
mssql-cli — Een opdrachtregelclient voor SQL Server met automatische aanvulling en syntaxisaccentuering.
mijncli — Een terminalclient voor MySQL met automatische aanvulling en syntaxisaccentuering.
pgcli - Postgres CLI met automatische aanvulling en syntaxisaccentuering.
vcli — Vertica CLI met automatische aanvulling en syntaxisaccentuering.
Navigatie en visualisatie van DB-schema's
dbdiagram.io — Snelle en eenvoudige tool waarmee u uw databaserelatiediagrammen kunt tekenen en snel kunt stromen met behulp van eenvoudige DSL-taal.
EAlchemie — Hulpprogramma voor het genereren van entiteitsrelatiediagrammen.
SchemaCrawler - Een gratis tool voor het ontdekken en begrijpen van databaseschema's.
Schema Spion — Het genereren van uw database naar HTML-documentatie, inclusief entiteitsrelatiediagrammen.
tbls — CI-vriendelijke tool voor het documenteren van een database, geschreven in Go.
Modelbouwers
Navicat-gegevensmodeller — Een krachtige en kosteneffectieve tool voor databaseontwerp waarmee u conceptuele, logische en fysieke datamodellen van hoge kwaliteit kunt bouwen.
Oracle SQL Developer Data Modeler — Oracle SQL Developer Data Modeler is een gratis grafische tool die de productiviteit verbetert en taken voor het modelleren van gegevens vereenvoudigt.
pgmodeller — Hulpprogramma voor gegevensmodellering ontworpen voor PostgreSQL.
Hulpprogramma's voor migratie
2 bas - Databaseconfiguratie-als-code-tool die gebruik maakt van het concept van idempotente DDL-scripts.
vloeibaar — Database-onafhankelijke bibliotheek voor het volgen, beheren en toepassen van wijzigingen in het databaseschema.
migreert — Zoals diff maar voor PostgreSQL-schema's.
knooppunt-pg-migreren — Node.js databasemigratiebeheer exclusief gebouwd voor postgres. (Maar kan ook worden gebruikt voor andere databases die voldoen aan de SQL-standaard, bijvoorbeeld CockroachDB.)
Pyrseas — Biedt hulpprogramma's om een PostgreSQL-databaseschema te beschrijven als YAML.
SchemaHero — Een Kubernetes-operator voor declaratief databaseschemabeheer (gitops voor databaseschema's).
Sqitch — Verstandig database-native verandermanagement voor raamwerkvrije ontwikkeling en betrouwbare implementatie.
yuniql — Nog een tool voor schemaversie- en migratie, zojuist gemaakt met native .NET Core 3.0+ en hopelijk beter.
Gereedschappen voor het genereren van code
ddl-generator — Leidt SQL DDL (Data Definition Language) af uit tabelgegevens.
schema2ddl — Commandoregelhulpprogramma voor het exporteren van Oracle-schema naar een set ddl-init-scripts met de mogelijkheid om ongewenste informatie te filteren, DDL in verschillende bestanden te scheiden, uitvoer in mooi formaat.
wrappers
Droomfabriek — Een open source REST API-backend voor mobiele, web- en IoT-applicaties.
Hasura GraphQL-engine — Razendsnelle, instant realtime GraphQL API's op Postgres met fijnmazige toegangscontrole, activeren ook webhooks voor databasegebeurtenissen.
mysql_fdw - PostgreSQL buitenlandse datawrapper voor MySQL.
Oracle REST-gegevensservices — ORDS, een mid-tier Java-applicatie, wijst HTTP(S)-werkwoorden (GET, POST, PUT, DELETE, etc.) toe aan databasetransacties en retourneert alle resultaten die zijn geformatteerd met JSON.
Prisma — Prisma verandert uw database in een realtime GraphQL API.
sandman2 — Genereer automatisch een RESTful API-service voor uw bestaande database.
sql-boot — Geavanceerde REST- en UI-wrapper voor uw SQL-query's.
Back-uphulpmiddelen
pgrugleuning - Betrouwbare PostgreSQL-back-up en -herstel.
Barman — Back-up- en herstelmanager voor PostgreSQL.
Replicatie/gegevensbewerking
Gegevensset — Een hulpmiddel voor het verkennen en publiceren van gegevens.
dtel — Gedistribueerde gegevensoverdrachtservice voor MySQL.
pgsync - Synchroniseer Postgres-gegevens tussen databases.
pg_kameleon - MySQL naar PostgreSQL-replicasysteem geschreven in Python 3. Het systeem gebruikt de mysql-replicatie van de bibliotheek om de rij-images uit MySQL op te halen die als JSONB in PostgreSQL worden opgeslagen.
PGDeltaStream — Een Golang-webserver om Postgres-wijzigingen minstens één keer via websockets te streamen, met behulp van de logische decoderingsfunctie van Postgres.
repmg — De populairste replicatiebeheerder voor PostgreSQL.
Scripts
pgx_scripts — Een verzameling nuttige kleine scripts voor databaseanalyse en -beheer, gemaakt door ons team van PostgreSQL Experts.
pgsql-bloat-schatting — Query's om statistische bloat in indexen en tabellen voor PostgreSQL te meten.
TPT — Deze sqlplus-scripts zijn bedoeld voor prestatie-optimalisatie en probleemoplossing van Oracle Database.
Monitoring/Statistieken/Prestaties
ASH-kijker — Biedt een grafisch overzicht van actieve sessiegeschiedenisgegevens binnen de Oracle- en PostgreSQL DB.
Monyog — Agentloze en kosteneffectieve MySQL-monitoringtool.
mssql-monitoring — Bewaak de prestaties van uw SQL Server op Linux met behulp van collected, InfluxDB en Grafana.
Navicat-monitor — Een veilige, eenvoudige en agentloze tool voor servermonitoring op afstand, boordevol krachtige functies om uw monitoring zo effectief mogelijk te maken.
Percona Monitoring en Beheer — Open source-platform voor het beheren en monitoren van MySQL- en MongoDB-prestaties.
Analyseer de verzamelaar — Pganalyze-statistiekenverzamelaar voor het verzamelen van PostgreSQL-statistieken en loggegevens.
postgres-controle — Diagnosetool van de nieuwe generatie waarmee gebruikers een diepgaande analyse kunnen maken van de gezondheid van Postgres-databases.
postgres_exporter - Prometheus-exporteur voor PostgreSQL-serverstatistieken.
pgDash — Meet en volg elk aspect van uw PostgreSQL-databases.
PgHero — Een prestatiedashboard voor Postgres — statuschecks, voorgestelde indexen en meer.
pgmetrics — Verzamel en toon informatie en statistieken van een actieve PostgreSQL-server.
pgMosterd — Een gebruikersinterface voor Postgres legt plannen uit, plus tips om de prestaties te verbeteren.
pgstats — Verzamelt PostgreSQL-statistieken en slaat deze op in CSV-bestanden of drukt ze af op de stdout.
pgwatch2 — Flexibele, op zichzelf staande oplossing voor monitoring/dashboarding van PostgreSQL-metrieken.
Orabbix — Orabbix is een plug-in die is ontworpen om samen te werken met Zabbix Enterprise Monitor om gelaagde monitoring, prestatie- en beschikbaarheidsrapportage en -meting voor Oracle Databases te bieden, samen met serverprestatiestatistieken.
pg_monz — Dit is de Zabbix-monitoringsjabloon voor PostgreSQL Database.
Pyra — Python-script om Oracle Databases te monitoren.
ZabbixDBA - ZabbixDBA is een snelle, flexibele en voortdurend ontwikkelende plug-in om uw RDBMS te monitoren.
Testen
DBFit — Een databasetestframework dat eenvoudige, testgestuurde ontwikkeling van uw databasecode ondersteunt.
Databene Benerator — Het is een raamwerk voor het genereren van realistische en geldige testgegevens in grote hoeveelheden voor uw te testen systeem (waarbij het Datalite-antipatroon wordt vermeden).
StapelGres — Full-stack PostgreSQL op bedrijfsniveau op Kubernetes.
Configuratie afstemmen
MySQLTuner-perl — Script geschreven in Perl waarmee u een MySQL-installatie snel kunt beoordelen en aanpassingen kunt maken om de prestaties en stabiliteit te verbeteren.
PGConfigurator — Gratis online tool om een geoptimaliseerd bestand te genereren postgresql.conf.
postgresqltuner.pl — Eenvoudig script om uw PostgreSQL-databaseconfiguratie te analyseren en afstemmingsadvies te geven.
DevOps
DBmaestro — DBmaestro versnelt releasecycli en ondersteunt flexibiliteit in het hele IT-ecosysteem.
Toad DevOps-toolkit — Toad DevOps Toolkit voert belangrijke functies voor databaseontwikkeling uit binnen uw DevOps-workflow, zonder concessies te doen aan de kwaliteit, prestaties of betrouwbaarheid.
Poli — Een eenvoudig te gebruiken SQL-rapportagetoepassing gebouwd voor SQL-liefhebbers.
uitkeringen
DBdeployer - Tool waarmee MySQL-databaseservers eenvoudig kunnen worden geïmplementeerd.
DBAtools - PowerShell-module die u misschien ziet als een opdrachtregel-SQL Server Management Studio.
Postgres.app — Volledige PostgreSQL-installatie verpakt als standaard Mac-app.
BigSQL — Een ontwikkelaarsvriendelijke distributie van Postgres.
Olifanten schuur — Webgebaseerd PostgreSQL-beheerfront-end dat verschillende hulpprogramma's en applicaties bundelt voor gebruik met PostgreSQL.
Security
Accra — Databasebeveiligingssuite. Databaseproxy met versleuteling op veldniveau, zoeken door versleutelde gegevens, preventie van SQL-injecties, inbraakdetectie, honeypots. Ondersteunt versleuteling aan de clientzijde en aan de proxyzijde ('transparant'). SQL, NoSQL.
Code-formatters
CodeBuff — Taalonafhankelijk mooi printen door middel van machinaal leren.
Als u vondsten heeft voor de database, deel deze dan. Ik ontvang ook graag feedback - PR's en sterren. Als u vragen heeft over het maken van uw eigen werkbladen, kunt u deze ook stellen.