MySQL数据库 053
mysql 使用:
开启服务端软件 mysqld
开启客户端软件 mysql -uroot -p
mysql : 就是一个基于socket编写的c/s架构的软件
概念介绍 :
数据库服务器 : 运行数据库管理软件的机器
数据库管理软件--Mysql
文件夹 --- 数据库
文件 ---- 表
数据 --记录
制作window服务
先清掉之前的服务端进程号 先找到 tasklist |findstr mysqld 之后清掉该进程 taskkill /F /PID +进程pid号
mysql --install 安装到window服务
注意:--install前,必须用mysql启动命令的绝对路径 # 制作MySQL的Windows服务,在终端执行此命令: "c:\mysql-5.6.40-winx64\bin\mysqld" --install # 移除MySQL的Windows服务,在终端执行此命令: "c:\mysql-5.6.40-winx64\bin\mysqld" --remove 注册成服务之后,以后再启动和关闭MySQL服务时,仅需执行如下命令: # 启动MySQL服务 net start mysql # 关闭MySQL服务 net stop mysql
修改管理员登录密码:在未登录mysql情况下输入mysqladmin -uroot -p"123" password "456" 再次运行就修改成功
登录到root账号: mysql -uroot -p; 查看当前用户 select user();
忘记密码--破解密码
跳过授权模式,直接登录!!
0 .以管理员身份打开cmd
1 .停掉mysql服务端
C:\WINDOWS\system32>net stop mysql
MySQL 服务正在停止.
MySQL 服务已成功停止。
2 .执行如下命令跳过授权表
#跳过授权表 C:\WINDOWS\system32>mysqld --skip-grant-tables 2018-06-09 17:12:38 0 [Warning] Insecure configuration for --secure-file-priv: Current value does not restrict location of generated files. Consider setting it to a valid, non-empty path. 2018-06-09 17:12:38 0 [Note] mysqld (mysqld 5.6.40) starting as process 6052 ...4.
3 .再次查看
4 .任意更改密码 执行以下命令
update mysql.user set password = password('') where user='root'and host='localhost'
# password('') 括号里加入想要修改的密码
5 .刷新权限 执行命令 flush privileges;
6 .退出mysql . 执行命令 : exit,
7 .用户以管理员身份进入cmd,查看当前mysql进程
tasklist |findstr mysql #查看当前mysql的进程
8 .杀死当前的进程 , 执行如下命令
taskkill /F /PID 显示的进程号(例如6052) # 杀死当前的进程pid
9 .再次执行如下操作 , 还原
二 .基本的mysql语句
查看用户名 : select * from user where user = "root"\G;
use 数据库的名字
操作文件夹(库);
新增 : create database db1(文件夹名(库名) 可依据需要自行命名);
删除 : drop database db1;
修改 : alter database db1;(修改字符集的编码 最好别改)
查看 : # 查看当前创建的数据库
show create database db1;
# 查看所有的数据库,
show databases;
操作文件(表) use db1 # 切换文件夹 select database(); # 查看当前所在文件夹
新增 : create table t1(id int,name char);
查询 : # 查看当前的这张t1表
show create table t1;
# 查看所有的表
show tables;
# 查看表的详细信息
desc t1;
修改 # modify 修改的意思
alter table t1 modify name char(6); # 里面的数字表示规定接收最大字符数量(不区分汉字和字母 只计数量); 例如 该式中 如果insert(id,name) values(1,"一二三四五六七");或者nsert(id,name) values(2,"abcdefgh")就会报错
# 改变name为大写的NAME
alter table t1 change name NAME char(7);
删除 # 删除表 drop table t1;
操作文件内容(记录);
增 # 插一条数据 规定id name 数据类
insert t1(id,name) values(1,"吴老板"),(2,"小马哥")
查
select id from db1.t1;
select id,name from db1.t1;
select * from db1.t1; #(可以加查找的条件 where id = 2)
改
update db1.t1 set name='zhangsan';
update db1.t1 set name='alex' where id=2;
删
delete from t1; delete from t1 where id=2;