MySQL是当前最流行的关系型数据库之一,常用于Web应用程序中。本文将从多个方面详细阐述MySQL基本操作,包括数据库和表的创建、查询、更新和删除等。

一、数据库操作

1、创建数据库

CREATE DATABASE database_name;

2、删除数据库

DROP DATABASE database_name;

3、使用数据库

USE database_name;

4、查询所有数据库

SHOW DATABASES;

5、查询某个数据库的所有表

SHOW TABLES FROM database_name;

二、表操作

1、创建表

CREATE TABLE table_name (
    column1 datatype,
    column2 datatype,
    column3 datatype,
    ....
);

2、删除表

DROP TABLE table_name;

3、查询表结构

DESC table_name;

4、修改表结构(添加列)

ALTER TABLE table_name ADD column_name datatype;

5、修改表结构(修改列)

ALTER TABLE table_name MODIFY column_name new_datatype;

6、修改表结构(删除列)

ALTER TABLE table_name DROP COLUMN column_name;

三、数据操作

1、插入数据

INSERT INTO table_name (column1, column2, column3, ...) 
VALUES (value1, value2, value3, ...);

2、查询数据

SELECT column1, column2, ... FROM table_name WHERE condition;

3、更新数据

UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;

4、删除数据

DELETE FROM table_name WHERE condition;

5、查询数据总数

SELECT COUNT(*) FROM table_name;

四、索引操作

1、创建索引

CREATE INDEX index_name ON table_name (column1, column2, ...);

2、删除索引

DROP INDEX index_name ON table_name;

3、查询索引

SHOW INDEX FROM table_name;

五、备份与恢复

1、备份数据

mysqldump -u username -p database_name > backup_file.sql;

2、恢复数据

mysql -u username -p database_name < backup_file.sql;

六、用户及权限操作

1、创建用户

CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';

2、授予权限

GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost';

3、修改密码

SET PASSWORD FOR 'username'@'localhost' = PASSWORD('newpassword');

4、撤销权限

REVOKE ALL PRIVILEGES ON database_name.* FROM 'username'@'localhost';

5、删除用户

DROP USER 'username'@'localhost';

七、错误处理

1、查看错误信息

SHOW ERRORS;

2、查看警告信息

SHOW WARNINGS;

3、设置最大错误数

SET GLOBAL max_error_count = value;

4、处理错误信息

BEGIN
  ...
  IF condition THEN
    SIGNAL SQLSTATE 'error_code' SET MESSAGE_TEXT = 'error_message';
  END IF;
  ...
END;

八、性能优化

1、使用索引

CREATE INDEX index_name ON table_name (column1, column2, ...);

2、使用连接池

<Resource name="jdbc/db" auth="Container" type="javax.sql.DataSource"
               factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
               driverClassName="com.mysql.jdbc.Driver"
               url="jdbc:mysql://localhost:3306/database_name"
               username="dbuser" password="dbpassword"
               initialSize="10" maxActive="100" maxIdle="20" minIdle="10"
               validationQuery="SELECT 1"
               testOnBorrow="true"
/>

3、优化SQL语句

SELECT column1, column2 FROM table_name WHERE condition; (优化前)
SELECT column1, column2 FROM table_name WHERE column3 = 'value'; (优化后)

4、避免全表扫描

SELECT column1, column2 FROM table_name WHERE column3 LIKE '%value%'; (避免)

5、缓存查询结果

CACHE query_name SELECT column1, column2 FROM table_name WHERE condition;

以上内容是MySQL基本操作的详细阐述,希望能对大家有所帮助。