Communitygithub.com

mindrally/mysql-best-practices

Meilleures pratiques de développement MySQL pour la conception de schémas, l'optimisation des requêtes et l'administration de bases de données.

Qu'est-ce que mysql-best-practices ?

Ce skill fournit des bonnes pratiques complètes pour le développement et l'administration de bases de données MySQL. Il couvre trois domaines essentiels : la conception de schémas (normalisation, indexation, choix des types de données), l'optimisation des requêtes (analyse des plans d'exécution, utilisation d'EXPLAIN, réduction des temps de réponse) et l'administration de bases de données (sauvegarde, réplication, sécurité, maintenance). En suivant ces recommandations, les développeurs et administrateurs peuvent améliorer les performances, la maintenabilité et la robustesse de leurs systèmes MySQL. Le skill est conçu pour être utilisé avec des agents IA comme Claude Code, Cursor ou Codex, en fournissant des directives directement exploitables dans des environnements de développement professionnels. Il inclut des exemples concrets, des listes de contrôle et des avertissements sur les anti-patrons courants. L'approche privilégie des solutions pragmatiques et éprouvées, adaptées aux projets de taille moyenne à grande.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/mindrally/skills/tree/main/skills/mysql-best-practices

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Que fait mysql-best-practices ?

Meilleures pratiques de développement MySQL pour la conception de schémas, l'optimisation des requêtes et l'administration de bases de données.

Conception de schéma

  • Normalisation : Appliquer la 3NF (Troisième forme normale) sauf en cas de besoin de performance justifié.
  • Indexation : Indexer les colonnes utilisées dans les clauses WHERE, JOIN et ORDER BY. Éviter les index sur des colonnes avec faible cardinalité.
  • Types de données : Utiliser le type le plus approprié et le plus petit possible (par exemple, BIGINT pour les grands entiers, VARCHAR(255) pour les chaînes courtes, DATETIME pour les dates).
  • Clés primaires : Toujours définir une clé primaire, de préférence auto-incrémentée sur un INT ou BIGINT.

Optimisation des requêtes

  • Expliquer les requêtes : Utiliser EXPLAIN pour analyser les plans d'exécution et identifier les goulots d'étranglement.
  • **Éviter SELECT *** : Spécifier uniquement les colonnes nécessaires pour réduire la charge et la mémoire.
  • Limiter les résultats : Utiliser LIMIT pour restreindre le nombre de lignes renvoyées.
  • Jointures efficaces : Préférer les jointures basées sur des index et éviter les sous-requêtes non corrélées quand une jointure est plus efficace.

Administration de la base de données

  • Sauvegardes : Planifier des sauvegardes régulières (logicielles et physiques) et tester leur restauration.
  • Réplication : Configurer la réplication pour la haute disponibilité et la répartition de charge.
  • Sécurité : Limiter les privilèges des utilisateurs, utiliser des mots de passe forts, et activer SSL/TLS pour les connexions.
  • Maintenance : Exécuter régulièrement OPTIMIZE TABLE, ANALYZE TABLE, et CHECK TABLE pour maintenir les performances.

Note : Ces bonnes pratiques sont générales. Adaptez-les toujours au contexte spécifique de votre application et à vos contraintes de performance.

Anti-patrons courants à éviter

  • Sur-indexation : Trop d'index ralentit les écritures et augmente l'espace de stockage.
  • Requêtes fragmentées : Éviter de faire plusieurs requêtes là où une seule jointure suffit.
  • N + 1 : Éviter les boucles de requêtes dans le code applicatif qui chargent des dépendances ligne par ligne.

Exemple de requête optimisée

-- Au lieu de
SELECT * FROM users WHERE age > 21;

-- Faire
SELECT id, name, email FROM users WHERE age > 21 LIMIT 100;

Documentation générée pour l'utilisation avec des agents IA.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

mindrally/accessibility-a11y

Implement web accessibility (a11y) best practices following WCAG guidelines to create inclusive, accessible user interfaces.

mindrally/chrome-extension-development

Expert guidelines for Chrome extension development with Manifest V3, covering security, performance, and best practices. Use when building browser extensions, creating popup UIs, implementing content scripts, working with Chrome APIs, managing extension permissions, or publishing to Chrome Web Store.

mindrally/computer-vision-opencv

Expert guidance for computer vision development using OpenCV, PyTorch, and modern deep learning techniques for image and video processing.

mindrally/data-analysis-jupyter

Expert guidance for data analysis, visualization, and Jupyter Notebook development with pandas, matplotlib, seaborn, and numpy.

mindrally/deep-learning-pytorch

Expert guidance for deep learning, transformers, diffusion models, and LLM development with PyTorch, Transformers, Diffusers, and Gradio.

mindrally/expo-react-native-typescript

Expert in Expo React Native TypeScript mobile development with best practices

mindrally/fastapi-python

Expert in FastAPI Python development with best practices for APIs and async operations

mindrally/framer-motion

Expert guidelines for building performant animations with Framer Motion/Motion library in React applications

mindrally/htmx

HTMX development guidelines for building dynamic web applications with minimal JavaScript using HTML attributes.

mindrally/jwt-security

Guidelines for implementing JWT authentication with security best practices for token creation, validation, and storage

mindrally/machine-learning

Machine learning development with JAX, functional programming patterns, and high-performance computing.

mindrally/nextjs-react-typescript

Expert in TypeScript, Node.js, Next.js App Router, React, Shadcn UI, Radix UI and Tailwind

mindrally/nextjs-typescript-tailwindcss-supabase

Full-stack Next.js 14 development with TypeScript, TailwindCSS, and Supabase for building production-ready web applications.

mindrally/odoo-development

Expert guidance for Odoo ERP development including Python ORM, XML views, and module architecture

mindrally/puppeteer-automation

Expert guidance for browser automation using Puppeteer with best practices for web scraping, testing, screenshot capture, and JavaScript execution in headless Chrome.

mindrally/redis-best-practices

Redis development best practices for caching, data structures, and high-performance key-value operations

mindrally/scrapy-web-scraping

Expert guidance for building web scrapers and crawlers using the Scrapy Python framework with best practices for spider development, data extraction, and pipeline management.

mindrally/scss-best-practices

SCSS/Sassy CSS best practices and coding guidelines for maintainable, scalable stylesheets

mindrally/typeorm

Guidelines for developing with TypeORM, a full-featured ORM for TypeScript and JavaScript supporting multiple databases

mindrally/web-scraping

Expert in web scraping and data extraction with Python tools

Skills associés