MYSQL常用语句总结(二)

本文总结了MySQL中各种索引的创建与管理方法,包括主键、唯一、普通及多列索引的添加,以及索引的删除。此外,还介绍了如何查看锁表状态、运行线程、锁定和解锁表,自增设置的查询与修改,用户创建与授权等实用操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#索引

MYSQL常用语句总结(二)

  • 添加主键索引
CREATE UNIQUE INDEX indexName ON mytable(username) ;
ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) ;

  • 添加唯一索引
CREATE UNIQUE INDEX indexName ON mytable(username) ;
ALTER TABLE `table_name` ADD UNIQUE ( `column` ) ;

  • 添加普通索引
alter table `table_name` add index index_name(`column`);
CREATE INDEX indexName ON mytable(username); 

  • 添加多列索引
CREATE INDEX orderNum_itemNum_index ON xg_material(orderNumber,itemNumber); 
alter table `table_name` add index index_name(`column1`,`column2`);

  • 删除索引
DROP   INDEX   index_name  ON  table_name;

  • 查看是否锁表
show OPEN TABLES where In_use > 0;
  • 显示了有哪些线程在运行(只显示100条,如要全部显示需要执行 show full processlist;只有root账号才会显示所有的,其他账号只会显示自己的)
show processlist;
  • 查看正在锁的事务
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS; 
  • 查看正在等待锁的事务
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;
  • 锁住表
lock table emp write; 
  • 解锁
unlock tables; 
  • 查看当前数据库自增设置
SHOW VARIABLES LIKE 'auto_inc%';

1575601531(1).jpg

  • 修改表的自增初始值
alter table user AUTO_INCREMENT = 2;

  • 查看某个数据库的某个表的自增初始值

SELECT
	auto_increment
FROM
	information_schema. TABLES
WHERE
	table_schema = '12-6'
AND table_name = 'user';

1575613660(1).jpg

  • 设置主键自增,初始值从10开始,每次自增10
CREATE TABLE mytest13
(
id INT PRIMARY KEY AUTO_INCREMENT,
age VARCHAR(10)
)AUTO_INCREMENT=9;
SET auto_increment_increment=10;
INSERT INTO mytest13(age) VALUES('20');
INSERT INTO mytest13(age) VALUES('15');
INSERT INTO mytest13(age) VALUES('20');
INSERT INTO mytest13(age) VALUES('15');

1575617393(1).jpg

  • 主键设置为自增的时候才会查询到主键的值,否则为0
SELECT LAST_INSERT_ID();
  • 创建新用户并授权
CREATE USER 'shenmm'@'localhost' IDENTIFIED BY '113081';

GRANT ALL ON lpc.* TO 'shenmm'@'%';

GRANT ALL PRIVILEGES ON lpc.* TO 'shenmm'@'%' IDENTIFIED BY '113081' WITH GRANT OPTION;


grant select on lpc.lpc_data_1k_b_1 to 'hans'@'%' IDENTIFIED BY 'hans2019';

参考:
MySQL show processlist说明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值