<MySQL>MySQL的基本操作(增,删,改)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 | 1. 用户管理 创建用户: create user '用户名' @ 'IP地址' identified by '密码' ;(IP地址: % 代表所有) 用户登录: mysql - u 用户名 - p(enter之后输入密码) 刚安装可能出现问题:无论怎么都没法登录新建的账户,提示如下: ERROR 1045 ( 28000 ): Access denied for user '123' @ 'localhost' (using password: YES) 原因:mysql的认证规则导则,匿名用户影响新用户的认证 解决办法:删除匿名用户 'root' @ 'localhosr' 和' '@' localhost' 删除用户: drop user '用户名' @ 'IP地址' ; 修改用户名: update user set user = '新用户名' where user = '老用户名' ; 修改密码: set password for '用户名' @ 'IP地址' = password( '新密码' ); 可能出现的问题:输入了修改的命令,但是一直提示: Can't find any matching row in the user table 原因:没有及时更新权限(或用户名) 解决办法:先输入命令:flush privileges;(刷新权限) 2. 权限管理 查看权限: show grants for '用户名' @ 'IP地址' ; 授权: grant 权限 on 数据库.表 to '用户名' @ 'IP地址' ;( all privileges除了grant以外的所有权限) 取消权限: revoke 权限 on 数据库.表 from '用户名' @ 'IP地址' ; 刷新权限: flush privileges; 3. 数据库操作 创建数据库: create database 数据库名字 default charset utf8; (创建数据库X默认编码utf - 8 ) 删除数据库: drop database 数据库名字; (删除数据库X) 修改数据库: 没有这种操作,硬要写就是 - - - - 先删除原来的,在创建新的数据库 查询数据库: show databases; (显示所有数据库) 使用数据库: use 数据库名字; 查询当前使用的数据库: select database();<br> 4. 数据表操作: 创建表: create table 表名( 列名 类型 是否为空 默认值, (例:name char( 12 ) not null default libai,) 列名 类型 是否为空 自增列, (例: ID int not null auto_increment primary key,)(一个表只有一个自增列,主键:约束(不重复,不为空),加速查找) )engine = innodb default charset = utf8; (引擎和编码格式) 删除表: drop table 表名; 清空表: delete from 表名;(自增列还是接着原来的) truncate table 表名;(自增列从 1 开始) 修改表: 修改表名: alter table 旧表名 rename 新表名; 添加列: alter table 表名 add 列名 类型; 删除列: alter table 表名 drop column 列名: (drop column:下拉列) 修改列名: alter table 表名 change 原列名 新列名 新类型; 添加主键: alter table 表名 add primary key(列名); 删除主键: alter table 表名 drop primary key; 添加外键: alter table 从表 add constraint foreign key 从表(外键字段) references 主表(主键字段); 删除外键: alter table 表名 drop foreign key 外键名称; 修改默认值: alter table 表名 alter column 列名 set default 新默认值; 删除默认值: alter table 表名 alter column 列名 drop default; 查询所有表名: show tables; 查询创表指令: show create table 表名; 5. 数据表内容操作: 插入数据: insert into 表名(列名 1 ,列名 2. ..) values(列值 1 ,列值 2. ..); insert into 表名(列名 1 ,列名 2 ) values(列值 1 ,列值 2 ),(列值 1_1 ,列值 2_1 ); #同时创建多个数据 insert into 表名 2 (列名 1 ,列名 2 ) select 列名 1 ,列名 2 from 表名 1 ; #将表1的数据(列名1,列名2)插入表2 删除数据: delete from 表名; delete from 表名 where 条件; 修改数据: update 表名 set 列名 = 列值; update 表名 set 列名 = 列值 where 条件; 查询数据: select * from 表名; select * from 表名 where 条件; select 列名 1 ,列名 2 , from 表名 where 条件; |
6 .备份和恢复
1.进入超级管理员
1 | sudo - s |
2.进入mysql目录
1 | cd mysql所在目录 |
3.运行mysqldump命令
1 | mysqldump - uroot - p 数据库名 > 指定数据生成路径 / 备份文件.sql; |
恢复
1.自己创建数据库
2.恢复数据
1 | mysql - uroot - p 数据库名 < 备份文件所在路径 / 备份文件.sql; |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步