300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > MySQL数据库学习一——MySQL基本操作 授权 远程连接

MySQL数据库学习一——MySQL基本操作 授权 远程连接

时间:2021-08-06 21:58:09

相关推荐

MySQL数据库学习一——MySQL基本操作 授权 远程连接

1.什么是数据库(简介,如需详情请自行百度)

MySQL是一个数据库管理系统,也是一个关系数据库。它是由Oracle支持的开源软件。这意味着任何一个人都可以使用MySQL而不用支付一毛钱。 另外,如果需要,还可以更改其源代码或进行二次开发以满足您的需要。

linux 安装

​ sudo apt install mysql-server

2.连接数据库

#mysql安装后默认有一个root用户,可以先使用root用于登陆$>mysql -u 用户名 -p$>mysql -u root -pwindow把 C:\Program Files\MySQL\MySQL Server 8.0\bin,加到环境变量中,才可以在终端上运行: mysql -uroot -plinux配置文件/etc/mysql/mysql.conf.dlinux中重启mysql:service mysql restart或者/etc/init.d/mysql restart

2-1:用户管理:
2-1-1:创建用户(需要使用root用户)

create user ‘用户名’@‘IP地址’ identified by ‘密码’;

IP地址一共有三种:localhost -> 代表本地,只能进行本地的登陆x.x.x.x -> 代表某一IP地址段,一般最后一位用%% -> 代表所有,允许远程访问,包括localhost和x.x.x.x

# 允许eric用户在本地登录>create user 'eric'@'localhost' identified by '123456';# 允许10.0.122.*网段使用eric用户登录>create user 'eric'@'10.0.122.%' identified by '123456';# 允许eric用户在任何地方登录>create user 'eric'@'%' identified by '123456';>create user eric identified by '123456';

2-1-2:查看用户:

>use mysql; #切换数据库>select user,host from user; #查询user数据库中的用户和登陆地址

2-1-3:删除用户:

>drop user '用户名'@'IP地址';

2-1-4:修改用户密码:

>set password for '用户名'@'IP地址' = password('新密码');>set password for '用户名'@'IP地址' = '新密码';

2-2:授权管理:需要root用户
2-2-1:查看权限:

show grants for ‘用户名’@‘IP地址’;

2-2-2:给用户授权:

grant 权限 on 数据库.表 to ‘用户名’@‘IP地址’;

#用户eric只能对axf数据库下的t1表进行查看和插入操作>grant select,insert on axf.t1 to 'eric'@'%';#用户eric只能对axf数据库下的所有表进行查看和插入操作>grant select,insert on axf.* to 'eric'@'%';#给用户eric对axf数据库的所有表,添加所有权限>grant all privileges on test.* to eric;#给用户eric对所有数据库的所有所有表,添加所有权限>grant all privileges on *.* to eric;#取消授权:>revoke 权限 on 数据库.表 from '用户名'@'IP地址';

#更改用户可登录ip地址>use mysql;>update user set host='localhost' where user='root';#如果是其它用户还需要授权grant usage on *.* to eric;

#将数据读取到内存,立即生效>flush privileges

Mysql开启远程连接1、#登陆mysql$ mysql -uroot -pmysql> use mysql;mysql> update user set host = '%' where user = 'root';mysql> select host, user from user;+-----------+------------------+| host| user |+-----------+------------------+| % | root || localhost | debian-sys-maint || localhost | mysql.session || localhost | mysql.sys |+-----------+------------------+4 rows in set (0.00 sec)2、#ok 退出MySQL 重启服务mysql> quit;$ service mysql restart#发现客户端远程还是连接不上 继续修改f配置文件#需要root权限,配置文件是只读的$ sudo vim /etc/mysql/mysql.conf.d/f#第43行改成0.0.0.0bind-address= 0.0.0.0#重启服务$ service mysql restart;#ok 可以了

3.管理mysql常用命令

这里是重要的MySQL命令,经常在MySQL数据库的管理或工作中使用:

#创建数据库#数据库编码为utf-8:>create database 数据库名 charset utf8;#数据库编码为gbk:>create database 数据库名 default charset gbk;

#删除数据库>drop database 数据库名

#查看当前选择的数据库>select database();

#查找记录select * from mysql.user;

#查看前用户select user();

#用于选择在MySQL工作区指定的数据库。>use 数据库名;

#列出了MySQL数据库管理系统中的所有可访问的数据库。>show databases;

#显示已经选择数据库中的表的命令。>show tables;

#MySQL数据库断开>exit#查看表结构desc 表名;

4.CRUD

4-1、增

建表:

CREATE TABLE table_name (column_name column_type);

例如:

create table student(id int not null auto_increment primary key,sex bit,age int default'18',name char(20),info varchar(100),birthday date);

注意:

a、全列插入

格式:insert into 表名 values(…);

说明:主键列是自动增长,但是在全列插入时需要占位,通常使用0,插入成功以后以实际数据为准

示例:insert into student values(0,“tom”,19,1,“北京”,0);

b、缺省插入

格式:insert into 表名(列1,列2,……) values(值1,值2,……);

说明:表名后注明需要插入的属性,这样就可以选择性的插入允许为空的数据

示例:insert into student(name,age,address) values(“lilei”,19,“上海”);​

c、同时插入多条数据

格式:insert into 表名 values(…),(…),……

说明:无

示例:insert into student values(0,“hanmeimei”,18,0,“北京”,0),(0,“poi”,22,1,“海南”,0),(0,“wenli”,20,0,“石家庄”,0);

4-2、删

格式:delete from 表名 where 条件;

​示例:delete from student where id=4;

注意:没有条件是全部删除,慎用

4-3、改

格式:update 表名 set 列1=值1,列2=值2,…… where 条件;

​示例:update student set age=16 where id=7;

​注意:没有条件是全部列都修改,慎用

4-4、查

说明:查询表中的全部数据

​格式:select * from 表名;

​示例:select * from student;

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。