CURD操作
索引
1.添加PRIMARY KEY(主键索引)
mysql>ALTER TABLE
table_name
ADD PRIMARY KEY (column
)
2.添加UNIQUE(唯一索引)
mysql>ALTER TABLE
table_name
ADD UNIQUE (column
)
3.添加INDEX(普通索引)
mysql>ALTER TABLE
table_name
ADD INDEX index_name (column
)
4.添加FULLTEXT(全文索引)
mysql>ALTER TABLE
table_name
ADD FULLTEXT (column
)
5.添加多列索引
mysql>ALTER TABLE
table_name
ADD INDEX index_name (column1
,column2
,column3
)
修改索引名称(mysql)
对于MySQL 5.7及以上版本,可以执行以下命令:
ALTER TABLE tbl_name RENAME INDEX old_index_name TO new_index_name
对于MySQL 5.7以前的版本,可以执行下面两个命令:
ALTER TABLE tbl_name DROP INDEX old_index_name
ALTER TABLE tbl_name ADD INDEX new_index_name(column_name)
修改数据库的字符集
mysql>use mydb
mysql>alter database mydb character set utf-8;
用户管理
新建用户及密码:foo为名,123为密码,locahost为固定地址登录
#以下为两种创建方式
CREATE USER foo@localhost IDENTIFIED BY ‘123’insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));
只要更改了用户及密码
flush privileges
设置及更改用户密码:
#以下为三种更改方式
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword')
#若果是当前登录用户
SET PASSWORD = PASSWORD('newpassword')
update mysql.user set password=password('newpassword') where User='username' and Host='host'
#只要更改了用户及密码
flush privileges
删除用户:
Delete FROM user Where User='test' and Host='localhost';
flush privileges;
#删除用户的数据库drop database testDB;
#删除账户及权限drop user 用户名@ localhost;
授权:
GRANT INSERT,DELETE,UPDATE,SELECT ON databasename.tablename TO 'username'
@'host'
flush privileges
说明:
(1)privileges-用户的操作权限,如SELECT , INSERT , UPDATE
(2)databasename - 数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用表示, 如.*
(3)新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效
查看权限:
show grants for root@localhost;
去除权限:
#GRANT的反操作,去除权限
REVOKE SELECT ON db_name.* TO name;
登录远程MySQL:
mysql -h <远程ip> -P 远程端口 -u 用户- p 密码
#需远程ip和端口:10.10.101.111:30061 远程mysql的用户及密码
mysql -h 10.10.101.111 -P 30061 -u root -p 123456
MySQL 中查看引擎
1、show engines; // 查看mysql所支持的存储引擎,以及从中得到mysql默认的存储引擎。
2、show variables like '%storage_engine%'; // 查看mysql 默认的存储引擎
3、show create table tablename ; // 查看具体某一个表所使用的存储引擎,这个默认存储引擎被修改了!
4、show table status from database where name="tablename"
//准确查看某个数据库中的某一表所使用的存储引擎
5、修改表引擎方法
alter table table_name engine=innodb;
4 关闭Innodb引擎方法
关闭mysql服务:
net stop mysql
找到mysql安装目录下的my.ini文件:
找到default-storage-engine=INNODB 改为default-storage-engine=MYISAM
找到#skip-innodb 改为skip-innodb
启动mysql服务:net start mysql