mysql

2021/12/22 19:19:32

本文主要是介绍mysql,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

初识mysql

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语法

账户&授权相关

权限类型:

  • 插入数据INSERT
  • 删除数据DELETE
  • 更新数据UPDATE
  • 查询数据SELECT
  • 所有权限*
# 查看当前用户
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;数据量大,删除速度比上一条快,且直接从零开始


这篇关于mysql的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程