Mysql命令
启动客户端的命令
mysql -u 账户 -p
数据库库的操作
show databases;
查看数据库
show create database 名字;
查看其中一个库
create database 名字;
创建数据库
create database 名字 charset utf8;
创建数据库指定编码
use 名字
使用数据库;
alter database 名字 charset utf8;
修改数据库编码
drop database 名字;
删除数据库
表的操作
###创建表
create table 名字(id int ,name char(16))
###查看表
查看当前库下所有的表
show tables;
查看刚刚创建的那一张表
show create table stu;
查看表的基本信息
desec stu;
###修改表
alter table class modify 名字 char(16);
修改表的数据类型
alter table class change 名字 新名字 char(18);
修改表的字段名和数据类型
###记录表
新增一条记录
insert into stu values(1,'sky'),(2,'rabbit');
查询记录
select * from 名字;
条件查询
select * from 名字 where id =1;
修改记录
update 名字 set name ='skyrabbit' where id = 3;
删除记录
delete from stu where name='sykrabbit';
删除表
drop table 名字;
查看字符集编码的命令
show variables like "%char%";
mysql客户端连接服务度端时候的完整命令
mysql -h ip地址 -P 端口 -u账户 -p 密码;
修改密码
##方法1: 用SET PASSWORD命令
登录mysql
首先登录MySQL,使用mysql自带的那个客户端连接上mysql。
格式:mysql> set password for 用户名@localhost = password('新密码');
例子:mysql> set password for root@localhost = password('123');
##方法2:用mysqladmin
不需要登录
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:mysqladmin -uroot -p123456 password 123
##方法3:用UPDATE直接编辑那个自动的mysql库中的user表
首先登录MySQL,连接上mysql服务端。
mysql> use mysql; use mysql的意思是切换到mysql这个库,这个库是所有的用户表和权限相关的表都在这个库里面,我们进入到这个库才能修改这个库里面的表。
mysql> update user set password=password('123') where user='root' and host='localhost'; 其中password=password('123') 前面的password是变量,后面的password是mysql提供的给密码加密用的,我们最好不要明文的存密码,对吧,其中user是一个表,存着所有的mysql用户的信息。
mysql> flush privileges; 刷新权限,让其生效,否则不生效,修改不成功。
忘记密码怎么办?
1.停掉mysql服务端(net stop mysql)
2.切换到mysql安装目录bin的目录下,然后手动指定启动mysql服务端,
指令:mysqld.exe --skip-grant-tables
3.重新启动一个窗口,连接mysql服务端
4.修改mysql库里面的user表里面的root用户记录密码:
update user set password=password('密码内容')whereuser='root';
5.关掉mysqld服务端,指令:
tasklist|findstr mysqld
taskkill /F /PID 进程号
6.正常启动服务端(net start mysql)
存储引擎
memory
拥有1一个文件
基于hash(可哈希的)
访问快,存在内存中,数据不太大,允许丢失的.
innodb
拥有两个文件
mysql5.6以上的默认存储方式
transaction 事物 保证数据安全 数据的完整性而设置的概念
row-level locking 表级锁
foreign keys 外键 一种约束
树 tree-加速查询(树形结构(数据+树)+表结构)
好处用于事物完整性有高要求 ,并发条件下(多个人使用)更多更新与删除的操作使用
功能全
myisam
拥有三个文件
mysql5.5以下的 默认储存方式
table-level locking 表级锁
树tree -加速查询(树形结构+数据+表结构)
以读取插入操作为主,只有很少更新和删除的操作,对事物完整性不高,并发要求不高
show create table staff;
查看当前表的存储方式
create tbale 名字(id int, name char (18)) engine=myisam;
修改表的储存格式为myisam
create tbale 名字(id int, name char (18)) engine=memory;
修改表的储存格式为memory
道,可道,非常道;名,可名,非常名。