mysql是目前使用很广泛的关系型数据库。
安装教程我就不详细写了,可以参考 https://www.cnblogs.com/Eva-J/articles/9676220.html。
起/停服务(windows)
net start mysql net stop mysql
本文使用5.6.44版本。此版本root没有初始密码。
客户端登录
mysql -uroot -p #初次登录可以这样直接登 mysql -uguest -p -h127.0.0.1 #演示使用guest用户登录某个ip的mysql
权限类型:
# 查看当前用户 mysql> select user(); #设置当前用户密码为123 mysql> set password = password('123'); # 创建新用户 guest,只允许来自 127.0.0.1的连接访问,设置用户密码为1212; mysql> create user 'guest'@'127.0.0.1' identified by '1212'; # 127.0.0.1的guest用户添加对confluence库的查询权限 mysql> grant select on confluence.* to 'guest'@'127.0.0.1'; # 授权的同时创建用户 mysql> grant select on confluence.* to 'xifan'@'127.0.0.1' identified by '1212'; mysql> flush privileges; # 刷新使授权立即生效 # '用户名'@'xxxx' 可以用百分号表示任意匹配 mysql> create user 'guest'@'%'; # 允许表示任意来源ip mysql> create user 'guest'@'192.168.10.%'; # 允许表示192.168.10 网段的ip来源 #查看某个来源ip用户的授权情况 mysql> show grants for 'xifan'@'127.0.0.1';
增删改查
1. 库 增: create database d1 charset utf8; #也可以不加字符集,有默认的 删: drop database d1; 改: alter database db1 charset latin1; #修改字符集为latin1 查: show databases; 切换: use 库名; #切换到某个库下 1. 表 增: create table t1(id int,name char(12),age int); #新建名为t1的表,char类型需要写上长度 删: drop table t1; 改: alter table t1 modify name char(10); #修改表头某项的字符长度 alter table t1 change name name1 char(12); #修改表头某项的名称与字符长度 查: show tables; #查看该库下有哪几张表 desc t1; #查看某张表的结构 describe t1; #与desc一样 1. 表内容 增: insert into t1 values(1,'杨稀饭',2),(2,'谭棉花',0); #向表t1中插入两行值 删: delete from t1 where id=2; 改: update t1 set age=3 where name="杨稀饭"; 查: select * from t1; 清空表: delete from t1; #如果有自增id,新增的数据,仍然是以删除前的最后一样作为起始。 truncate table t1;数据量大,删除速度比上一条快,且直接从零开始