create database 数据库名;
// 例如创建数据库 db_school
create database db_school;
use 数据库名;
// 例如使用数据库 db_school
use db_school;
show databases;
drop database 数据库名;
// 例如删除数据库 db_school
drop database db_school;
show tables;
create table 数据表名(
字段名1 字段类型,
字段名2 字段类型
...
)
-- 例如创建 student 表
create table student(
id int(5) primary key,
name varchar(20),
birthday datetime
)
select * from 表名;
-- 例如查看 student表 的所有数据
select * from student;
select 字段1,字段2 from 表名;
-- 例如查看 student表 的id、name字段
select id,name from student;
insert into 表名(字段1,字段2,字段3) values(值1,值2,值3);
-- 例如添加 student表 数据
insert into 表名(id,name,birthday) values(1001,'张三','1949-10-01');
update 表名 set 字段名1 = 新值1,字段名2 = 新值2 where 字段名 = 值
-- 例如修改 student表 中id为1001的数据
update student set name='李四',birthday='1949-10-02' where id =1001;
delete from 表名 where 字段名 = 值;
-- 例如删除 student表 中id为1001的数据
delete from student where id=1001;
select host,user,authentication_string from mysql.user;
-- 创建用户,允许本地访问
create user '用户名'@'localhost' identified by '密码';
-- 创建用户,允许指定ip访问
create user '用户名'@'ip地址' identified by '密码';
-- 创建用户,允许任何ip访问
create user '用户名'@'%' identified by '密码';
格式:drop user '用户名'@'host';
drop user '用户名'@'localhost';
drop user '用户名'@'ip地址';
drop user '用户名'@'%';
格式:grant 权限 on 数据库名.表名 to '用户名'@'host' identified by '密码';
* 表示所有,
host = "localhost", 为本地访问,
host = "ip" ,为指定ip访问,
host = "%",为任意ip访问
-- 为用户admin,指定school数据库进行授权 "查询"
grant SELECT on school.* to 'admin'@'%' identified by "123456";
-- 为用户admin,指定school数据库里的student表进行授权 "查询"
grant SELECT on school.student to 'admin'@'%' identified by "123456";
......
-- 为用户admin赋多个权限 "查询/添加/删除/修改"
grant SELECT,INSERT,DELETE,UPDATE on school.* to '用户名'@'%';
格式:show grants for '用户名'@'host';
* 表示所有,
host = "localhost", 为本地访问,
host = "ip" ,为指定ip访问,
host = "%",为任意ip访问
-- 查看用户admin的所有权限
show grants for 'admin'@'%';
格式:revoke 权限 on 数据库名.表名 from '用户名'@'host';
-- 删除用户admin在school库下student表的INSERT权限
revoke INSERT on school.student from 'admin'@'host';
关于mysql用户权限的相关细节,可以参考这个博主的文章:
出现这个异常一般表示数据库无法存入特殊字符、特殊表情
解决:特殊字符入库、表情符号入库
第一步:修改MYSQL配置文件 my.cnf(一般在 /etc/my.cnf 路径下),修改这三部分的编码格式
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
第二步:修改my.ini
[mysqld]
character-set-server=utf8mb4
[mysql]
default-character-set=utf8mb4
第三步:重启服务器MYSQL数据库
sudo service mysql restart
第四步:修改数据库的编码格式、修改数据表的编码格式
ALTER DATABASE 数据库名 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
ALTER TABLE 数据表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
因篇幅问题不能全部显示,请点此查看更多更全内容