mysql数据库管理软件,记录事物一些数据特征:
由库,表,记录组成.
库相当于一个文件夹
表相当于一个文件
记录就是文件里面一条一条的内容
表中的成员属性就是一个一个字段
可以为每个项目建立一个数据库
命令可以用tab来补全
d:
D:\>cd MySQL5.7
D:\>cd D:\MySQL5.7\mysql-5.7.25-winx64\bin 直接切换到对应的路径
D:\>dir 来查看文件夹里面的内容
\q 代表退出
mysql -uroot -p 登录
cls 清屏(windows) ctrl + l 清屏(linux)
ctrl + c 终止
[windows] 在超级管理员权限下才能使用:
net start mysql 启动mysql
net stop mysql 停止mysql
[linux]
service mysql start 启动mysql
service mysql stop 停止mysql
service mysql restart 重启mysql
登录完整语法:
mysql -u用户名 -p密码 -h地址ip
登录到本地mysql 默认用户root 是最高权限账户
mysql -uroot -p
localhost => 127.0.0.1 本地ip地址
退出mysql
\q 或者 exit
远程连接mysql 服务器
mysql -uroot -p -h192.168.65.130
查询当前登录的用户是谁
select user();
设置密码
set password = password("123456");
去除密码
set password = password("");
ipconfig windows | ifconfig linux
windows连接远程linux中的mysql
create user "ceshi100"@"192.168.65.1" identified by "333";
给具体某个网段下的所有ip设置账户 % 代表任意的数据0~255
create user "ceshi11"@"192.168.111.%" identified by "111"
所有的ip都可以登录 % 任意所有ip
create user "ceshi12"@"%" identified by "111"
"""USAGE 没有任何权限"""
mysql> show grants for "ceshi12"@"%";
+-------------------------------------+
| Grants for ceshi12@% |
+-------------------------------------+
| GRANT USAGE ON *.* TO 'ceshi12'@'%' |
+-------------------------------------+
1 row in set (0.00 sec)
授权:
grant 权限 on 数据库.表名 to "用户名"%"ip地址" identified by "密码":
主要权限
select 查询数据库的权限
insert 插入数据库的权限
update 更新数据库的权限
delete 删除数据库的权限
* 代表所有
grant select on *.* to "ceshi12"@"%" identified by "222";
all 代表所有的权限
grant all on *.* to "ceshi12"@"%" identified by "333";
查看所有数据库
show databases;
移除权限
revoke all on *.* from "ceshi12"@"%";
删除账户
drop user "ceshi12"@"%";
刷新权限,立刻生效
flush privileges
### [*****必须熟练]
操作[数据库] (文件夹)
增
# 创建数据库
create database db0616 charset utf8;
查
# 查看所有数据库
show databases;
# 查看数据库的建表语句
show create database db0616 ;
CREATE DATABASE `db0616_2` /*!40100 DEFAULT CHARACTER SET utf8 */
改
# alter 更改数据库的字符集
alter database db0616 charset gbk
删
# 删除数据库db0616
drop database db0616;
(2) 操作[数据表] (文件)
\G 格式化输出(文本式,竖立显示)
\s 查看服务器端信息
\c 结束命令输入操作
\q 退出当前sql命令行模式
\h 查看帮助
#id是每条数据的唯一标识
在创建数据表的时候,先有数据库 ,有了数据库,使用use数据库名就可以创建表了
选择数据库
use 数据库名
增
# int 整型 char 字符
# 字段名1 类型1 , 字段名2 类型2 ....
create table t1(id int , name char);
查
# 查询所有数据表
show tables;
# 查看表的建表语句
show create table t1\G #( 加上\G 垂直显示 ,默认横向显示)
竖着放 \G 可以在创建一个表
"""
CREATE TABLE `t1_1` (
`id` int(11) DEFAULT NULL,
`name` char(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
"""
# 查看表结构
desc t1;
field 字段
改
# modify 只能改变数据类型
alter table t1 modify name char(5);
# change 练字段名+数据类型一起改变
alter table t1 change name NAME char(4);
alter table t1 change name name_new char