MySQL Create Database
Overview
Creating a database is one of the first tasks when working with MySQL. A database is a container that holds related data and database objects like tables, views, and indexes.
Database Concepts
- Database: Container for tables and other objects
- Character Set: Character encoding for data storage
- Collation: Rules for comparing and sorting strings
- Schema: Database structure definition
CREATE DATABASE Statement
Basic Syntax
Complete Syntax
Examples
Character Sets and Collations
Common Character Sets
| Character Set |----------------------|------------------| | latin1 | Latin1 (Western European) | utf8 | UTF-8 (up to 3 bytes per character) | utf8mb4 | UTF-8 (full Unicode, up to 4 bytes)
Common Collations
| Collation |--------------------|------------------| | utf8mb4_general_ci | General case-insensitive | utf8mb4_unicode_ci | Unicode case-insensitive | utf8mb4_0900_ai_ci | Unicode 9.0, accent-insensitive | utf8mb4_0900_as_cs | Unicode 9.0, accent-sensitive
Setting Character Set and Collation
Creating Databases in Different Ways
Using mysqladmin
Using MySQL Workbench
- Open MySQL Workbench
- Connect to MySQL server
- Click "Create Schema" or use SQL Editor
- Enter schema name and options
- Click "Apply"
Using Programming Languages
Python / Python
PHP / PHP
Command Line with Options
Managing Databases
Show Databases
Select Database
Database Information
Alter Database
Drop Database
Rename Database
Database Templates
Default Database
MySQL includes template databases:
| Database |-----------------|--------------| | information_schema | Metadata about all databases | mysql | System database | performance_schema | Performance metrics | sys | System views for diagnostics
Cloning Database
Practical Examples
Example 1: Development Database
Example 2: Production Database
Example 3: Multi-Tenant Database
Example 4: Database with Regional Settings
Best Practices
Naming Conventions
Security Considerations
Performance Considerations
Troubleshooting
Common Errors
Checking Database Status
Summary
Creating databases in MySQL involves:
- CREATE DATABASE: Basic database creation
- Character Sets: Choosing appropriate encoding
- Collations: Defining comparison rules
- Management: Show, alter, drop databases
- Security: Proper user privileges
Previous: Connection
Next: Drop Database