mysql 常用知识

时间:2023-03-09 10:01:14
mysql 常用知识

1、uuid guid

UUID是一个由4个连字号(-)将32个字节长的字符串分隔后生成的字符串,总共36个字节长。比如:550e8400-e29b-41d4-a716-446655440000

CHAR(36)或者BINARY(36) 保存

在mysql用char(36) 默认保存为uuid格式 不是uuid格式,不要用char(36),可以用varchar

select uuid();来取得uuid值

GUID 是微软对UUID这个标准的实现

2、phpmyadmin 修改连接mysql端口和网址

$cfg['Servers'][$i]['host'] = 'localhost';

/**
* MySQL port - leave blank for default port
*
* @global string $cfg['Servers'][$i]['port']
*/
$cfg['Servers'][$i]['port'] = '3309';

3、mysql忘记密码:

在my.ini文件中加上 skip-grant-tables 后,不用密码也能进数据库了! 修改密码后,删除skip-grant-tables

4、mysql 连接权限

在mysql数据库里有个user表 管理权限

host 属性说明:

% :任何主机都可以连接

localhost :只能本地连接

5、加密解密

不可逆 md5()  PASSWORD()

加密函数(AES_ENCRYPT() )和解密函数(AES_DECRYPT())

字段为:varbinary 100

AES_ENCRYPT('字符串','key'); AES_DECRYPT('字符串','key');

需要Linux 且 AES_ENCRYPT 加密结果最好也以BLOB类型存储

6、自增长主键的初始值

A、如果曾经的数据都不需要的话,可以直接清空所有数据,并将自增字段恢复从1开始计数 
truncate table 表名

B、alter table $table_vote auto_increment=1 //不输出数据,重置自增列。

7、SQL输出日志及慢查询

注意:这些日文件在mysql重启的时候才会生成
#记录所有sql语句
log=D:\wamp\outmysql.log #记录数据库启动关闭信息,以及运行过程中产生的错误信息
log-error=D:\wamp\myerror.log # 记录除select语句之外的所有sql语句到日志中,可以用来恢复数据文件
log-bin=D:\wamp\mysql_noquery.log#记录查询慢的sql语句
log-slow-queries=D:\wamp\mysql_slow_query.log #慢查询时间
long_query_time=0.5 log = "D:\xampp\mysql\outmysql.log"
log-slow-queries = "D:\xampp\mysql\slowquery.log"
long_query_time = 1  #单位是秒

一款php写的mysql慢查询日志分析工具:http://sourceforge.net/projects/myprofi/

8、复制表

Select * Into new_table_name from old_table_name;
替代方法:
Create table new_table_name (Select * from old_table_name);