1.Mysql代码规范
1.关键字、函数名称大写
2.数据库名称、表名称、字段名称等全部小写
3.必须以分号;结尾 (或 g)
2.记录mysql日志
开始记录
mysql> T 日志地址 日志文本名.txt
结束记录
mysql>
3.创建数据库
//简单创建
CREATE DATABASE test1; //创建test1数据库
//详细创建:查验无重名后再新建数据库,并指定编码格式
create database if not exists maizi4 charcter set 'GBK'
4.查看数据库列表、某个数据库详情
全部数据库列表
show databases;
查看数据库详情(主要是编码格式、内容)
show create database 数据库名;
show create schema 数据库名;
5.修改数据库编码格式(默认utf-8)
1.alter database 数据库名称 default character set utf8;
2.alter database 数据库名称 default character set=utf8;
6.打开数据库
打开某个数据库
use 数据库名;
查看当前打开的数据库的列表
select database(); //注意带() 那是个方法
7.删除数据库
//直接删
drop database 数据库名;
//验证存在后再删
drop database if exists 数据库名;
8.查看警告详情
show warnings;
9.查看Mysql帮助手册
1.help tinyint //查看tinyint的范围
2.? int //查看int的范围
3.h create database //查看如何创建数据库
10.几个常见的数据库存储引擎
//每次建表时可以根据存储格式选择不同的存储引擎,不同引擎支持的**不同。主要有:
1.InnoDB存储引擎【默认轻轻功能强大,效率较低,支持并发、外键、回滚和修复,使用的最多】
---常规---
2.MyISAM存储引擎【插入记录快,默认静态(固定长度),不支持事物,对完整性、并发性支持弱】
---读取快,完整性、并发性要求不高---
3.MEMORY存储引擎【在内存中存储,读取快但耗内存;很少使用,一般不能建很大的表,多是一次性表】
---临时表---
11.数据存储引擎查询
查看支持的存储引擎 show engines;
查看支持的存储引擎信息:show variables like ‘have%’
查看默认的存储引擎:show variables like 'storage_engine'
12.创建数据表
创建数据表
//注:一般是在别的编辑器(推荐Notepad++)建好再粘贴到命令行
//注:Mysql里面都是用`反引号包裹关键词的,区别保留字与普通字符
CREATE TABLE[IF NOT EXISTS] `表名` (
`字段名1` 列类型[属性][索引][注释],
`字段名2` 列类型[属性][索引][注释],
`字段名3` 列类型[属性][索引][注释],
`字段名4` 列类型[属性][索引][注释],
)
创建数据表语句
13.检查mysql数据库存放目录
14.修改Mysql账号和密码
修改账号
Use mysql:
Update user set user='新值' where user='旧值'
或:rename user'用户名'@'IP地址'to'新用户名'@'IP地址'
修改密码
Update user set password=password('新值') where user='账号名'
或:在当前账号下使用
set password for 用户名@localhost = password('新密码');
忘记密码
1.找到mysql安装目录下的my.ini文件
2.在[mysqld]下添加skip-grant-tables,然后保存并退出
3.使用net stop mysql 和net start mysql 重启mysql
4.使用mysql 命令进入mysql命令行
5. 进入mysql数据库:Use mysql
执行:Update user set password=password(‘新值’) where user =‘账号名’
6.使用exit;退出mysql 。将my.ini 中的添加的skip-grant-tables删除或者屏蔽,保存后重启mysql。
15.开启远程访问
1.在mysql数据库user表中添加账号,设置他的host为%
create user ‘用户名’@' %' identified by '密码';
2.需要给这个账号分配权限
Grant 权限 on 数据库.* to ‘用户名’@’%’ identified by “密码”;
权限=all privileges select,update,delete
3.刷新权限表:
flush privileges;
注意:如果创建权限的时候
会提示can't find any matching row in the user table,意思是在user表里找不到这个用户,但是直接用select 查询user表,是可以查到的。
原因是我们创建用户后,只是写入了user表,但是并没有及时写入权限表(grant table)。
所以需要在insert之后,执行 FLUSH PRIVILEGES命令,更新grant table,此时grant table里有了我们刚插入的用户,才能对它进行权限修改:
mysql> FLUSH PRIVILEGES;