MySQL基础
MySQL的介绍
MySQL是CS架构
MySQL服务器帮助我们来管理文件的操作
MySQL软件
服务端软件
- 服务端程序
- 解析指令
- 对文件的操作
客户端软件
- 客户端程序
- 发送指令(sql语句)
- 解析指令
安装
安装MySQL服务器软件
启动服务端程序
客户端连接服务端
sql语句
注意事项
添加系统环境变量
将MySQL的bin添加到电脑环境变量中,例如我的是D:mysql-5.7.23-winx64in
初始化
mysqld --initialize-insecure
开启服务端
mysqld
客户端连接服务端
mysql -uroot -p
安装windows服务
以管理员身份运行
杀死服务端的进程
tasklist |findstr mysql 查看进程号 taskkill /F /PID 进程号
安装Windows服务(mysql服务端软件安装到Windows)
D:mysql-5.7.23-winx64inmysql --install
移除Windows服务(mysql服务端软件从Windows中移除)
D:mysql-5.7.23-winx64inmysql --remove
启动服务
net start mysql
停止服务
net stop mysql
密码设置
给root用户设置(修改)密码,密码为123
update mysql.user set authentication_string = password('123') where user='root';
刷新权限
flush privileges;
破解密码
先把原来的mysql服务端关闭
管理员身份运行如下命令
mysql --skip-grant-tables
客户端连接服务端,此时修改密码
注意修改密码之后一定要刷新权限
创建用户
创建用户
指定ip: 192.118.1.1的mjj用户登录
create user 'mjj'@'192.118.1.1' identified by '123';
指定ip:192.118.1.开头的mjj用户登录
create user 'mjj'@'192.118.1.%' identified by '123';
指定任何ip的mjj用户登录
create user 'mjj'@'%' identified by '123';
统一字符编码
sql语句
查看所有的数据库
show databases;
进入数据库db1
use db1; -- db1为数据库名
创建数据库
create database db1; -- db1为数据库名
创建表
create table s1(id int, name char(10)); -- 创建表s1,设定id的类型为int型,name的类型为char(10),即设定字符串的长度为10 insert into s1(id, name) values(1, 'alex'), (2, '哪吒'); -- 插入数据,id为1的name为alex,id为2的name为哪吒
对当前用户授权操作(root用户拥有)
授权 mjj用户仅对db1.t1文件有查询.插入和更新的操作
grant select on db1.s1 to 'mjj'@'%'; -- 授权 mjj用户仅对db1.t1文件有查询操作
表示有所有的权限,除了grant这个命令
grant这个命令是root才有的
grant all privileges on db1.t1 to 'mjj'@'%'; -- 除grant之外的所有权限,也就是说mjj用户对db1下的t1文件有任意操作的权限
mjj用户对db1所有数据库中的文件执行任何操作
grant all privileges on db1.* to 'mjj'@'%';
mjj用户对所有数据库中文件有任何操作
grant all privileges on *.* to 'mjj'@'%' -- 授权mjj用户对数据库所有文件的所有的所有权限
取消授权
remove select on db1 from 'mjj'@'%'; -- 取消mjj用户对db1数据库的查询权限
在其他计算机上使用mjj账号连接MySQL
mysql -umjj -h 192.168.12.74 -p -- -h 192.168.12.74 的意思为MySQL运行的主机主机的ip地址为192.168.12.74 123 -- 交互式输入 123为登录密码