1 进入 mysql:mysql -u root -p
2 创建数据库:create database 数据库名;
3 使用数据库:use 数据库名;
4 删除数据库:drop database 数据库名;
5 展示表:show tables;
6 创建表
create table 表名 (
列名 1 数据类型,
列名 2 数据类型,
列名 3 数据类型,
..........);
7 删除表:drop table 表名
8 增加数据
insert into 表名 (列名 1,列名 2,列名 3) values (.......);
9 修改数据
update 表名 set ....where...;
10 新增一列:alter table 表名 add column 列名 数据类型;
11 删除一列:alter table 表名 drop 列名;
12 增加主键约束:
alter table 表名 add constraint 主键名 primary key (约束描述);
13 增加外键约束:
alter table 表名 2 add constraint 外键名 foreign key (约束描述)references 表名 2 (约束描述);
14 查看主键:desc 表名
15 查看外键:show create table 表名;
16 删除外键约束:
alter table 表名 drop foreign key 外键名;(删除外键后,才可以修改表的数据)
17 删除主键约束:
alter table 表名 drop primary key;
18 修改表名:alter table tablename rename table_newname;
19 修改表的列名:
例子:alter table emp change salary sal decimal (7,2);
20 查看 mysql 版本号:status;
21 查看数据库字符集:show variables like 'character%';
22 删除表中的一行数据:delete from 表名 where 条件
23 列出表中的字段:show full fields from 表名;
24 查看数据库字段编码方式:show full columns from 表名;
25 查看 mysql 支持的字符集:show character set;
26 查看当前数据库的校对规则:show variables like 'collation';
27 表结构详细描述:describe tablename;
28 复制表结构:create table newtable like oldtable;
29 复制表数据:insert into newtable select * from oldtable;
30 显示当前 mysql 版本和当前日期:select version(),current_date;
31 修改 root 密码:
31.1 原始密码为空
mysqladmin -u root password
New password:< 输入新的密码 >
confirm new password:< 再次输入新密码 >
31.2 原始密码不为空
mysqladmin -u root password
Enter password:< 输入旧的密码 >
New password:< 输入新的密码 >
confirm new password:< 再次输入新密码 >
32 备份和恢复
mysqldump -u root -p dbname > dbname.sql # 备份整个数据库(包含表结构和数据)
mysqldump -u root -p -d dbname > dbname.sql # 备份数据库表结构,不包含数据
mysqldump -u root -p dbname tablename > tablename.sql # 备份数据库中的某张数据表(包含表结构和数据)
mysqldump -u root -p dbname tablename1 tablename2 > tables.sql # 备份数据库中 2 张数据表
mysqldump -u root -p -d dbname tablename > tablename.sql # 备份数据库中的某张数据表的表结构(不含数据)
mysqladmin -u root -p create dbname # 恢复数据库步骤 1:创建数据库
mysql -u root -p dbname < dbname.sql # 恢复数据库步骤 2:恢复数据
33 用户和权限管理
33.1 给用户 username 分配所有数据库的所有权限
GRANT ALL ON . TO 'username'@'localhost' IDENTIFIED BY '123456';
33.2 用 REVOKE 删除原来的权限
REVOKE ALL ON . FROM 'username'@'localhost';
33.3 重新授予仅在 dbname 数据库上的权限
GRANT ALL ON dbname.* TO 'username'@'localhost' IDENTIFIED BY '123456';
33.4 仅授予 select、update 权限,无法执行 insert、delete 等命令
GRANT SELECT, UPDATE ON dbname.* TO 'username'@'localhost' IDENTIFIED BY '123456';
33.5 每当调整权限后,通常需要用这个命令刷新权限
FLUSH PRIVILEGES;
33.6 删除用户
DROP USER username@localhost;
以上是笔者根据经验的整合,欢迎大家补充哈。。。。
原创申明:以上是笔者根据个人经验总结,仅供参考,如需转载,请注明出处
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于