mysql工作笔记

[TOC]

MySQL常用函数

CONCAT          将多个字段内容连接在一起        select CONCAT(title,know) from my_course where id = 1
            (高中语文诗二首2,3,4,5,6,16,24)
            
CONCAT_WS       将多个字段用指定字符连接在一起     select CONCAT_WS('|',title,know,id) from my_course where id = 1
            (高中语文诗二首|2,3,4,5,6,16,24,|1)
            
INSERT          截取字段中的某一截       select INSERT(title,1,3,'---') from my_course where id = 1
            (---文诗二首)
            
LPAD            将字段补充到指定长度          select LPAD(title,20,'-') from my_course where id = 1
            (-------------高中语文诗二首)
            
RPAD            将字段补充到指定长度          select RPAD(title,20,'-') from my_course where id = 1
            (高中语文诗二首-------------)
            
LTRIM(s)            去掉字符串s开始处的空格
RTRIM(s)            去掉字符串s结尾处的空格
TRIM(s)             去掉字符串s开始和结尾处的空格
TRIM(s1 FROM s)     去掉字符串s中开始处和结尾处的指定字符
REPEAT(s,n)         将字符串s重复n次
REPLACE(s,s1,s2)    将字符串s2替代字符串s中的字符串s1     select REPLACE(title,'语文','-') from my_course where id = 1

命令行连接

mysql -h 192.168.0.60 -u dearedu -p -P 3306

PDO连接方法

header('content-type: text/html; charset=utf8');

try {
    $pdo = new PDO('mysql:host=localhost; dbname=work', 'root', 'root', array(1002 => 'set names utf8'));
} catch (PDOException $e) {
    die ("Error!: " . $e->getMessage() . "<br/>");
}

$result = $pdo->query('select * from city');

$one = $result->fetch(PDO::FETCH_ASSOC);

$ls = $result->fetchAll(PDO::FETCH_ASSOC);

开启定时备份数据库

创建shell文件
    mkdir /home/backup/backup.sh
编辑shell文件
    vi /home/backup/backup.sh
        #!/bin/bash
        currentdate=`date +%Y%m%d`
        mysqldump -udearedu -ppower123321 member > /home/backup/member_${currentdate}.sql
赋权限给shell文件
    chmod u+x /home/backup/backup.sh
添加计划任务
    crontab -e
    插入内容 */1 * * * * /home/backup/backup.sh

数据的导入导出

1. 导出
1.导出整个数据库           
        mysqldump -u root -p wyapi > e:/abc.sql
2.导出一个表              
        mysqldump -u root -p wyapi user > e:/abc.sql
3.导出一个数据库结构       
        mysqldump -u root -p -d --add-drop-table wyapi > e:/abc.sql
4.导出数据库wyapi中表notes的前100条数据
        mysqldump -uroot -proot wyapi notes --where "1=1 limit 100" --lock-all-table > e:/abc.sql
2. 导入
    mysql -uroot -proot
    use test
    source e:/abc.sql
C:\phpstudy\MySQL\bin>mysqldump.exe -uroot -proot whty_gaozhong wl_exam_question > c:\wl_exam_question.sql

只导数据
C:\phpstudy\MySQL\bin>mysqldump -t whty_gaozhong -uroot -proot --tables wl_exam_question > c:\wl_exam_question.sql

mysql慢查询设置

  • 查看慢查询时间 (默认10s)
    show variables like "long_query_time";
  • 查看慢查询配置情况
    show status like "%slow_queries%";
  • 查看慢查询日志路径
    show variables like "%slow%";
  • 具体配置如下:
log-slow-queries=F:phpStudyMySQLdataXB-20170514HRTA-slow.log (路劲)
long_query_time=1 (时间)
log-queries-not-using-indexes (记录下没有使用索引的查询)

mysql存储引擎的区分

  • MYISAM 默认存储引擎
    表锁,顾而并发不好
    全文搜索
    压缩机制
    适合大量的select
    保存记录的行数,count(*)更高效

  • InnoDB
    行锁,顾而并发好
    事务
    外键
    适合大量的inert、update

mysql字段类型

日期和时间数据类型
date        3字节,日期,格式:2014-09-18
time        3字节,时间,格式:08:42:30
datetime    8字节,日期时间,格式:2014-09-18 08:42:30
timestamp   4字节,自动存储记录修改的时间
year        1字节,年份

数值数据类型
tinyint         1字节,范围(-128~127)
smallint        2字节,范围(-32768~32767)
mediumint       3字节,范围(-8388608~8388607)
int             4字节,范围(-2147483648~2147483647)
bigint          8字节,范围(+-9.22*10的18次方)
上面定义的都是有符号的,当然了,也可以加上unsigned关键字,定义成无符号的类型,那么对应的取值范围就要翻翻了,比如: tinyint unsigned的取值范围为0~255。

浮点型
float(m, d)     4字节,单精度浮点型,m总个数,d小数位
double(m, d)    8字节,双精度浮点型,m总个数,d小数位
decimal(m, d)   decimal是存储为字符串的浮点数
我在MySQL中建立了一个表,有一列为float(5, 3);做了以下试验:
1.插入123.45678,最后查询得到的结果为99.999;
2.插入123.456,最后查询结果为99.999;
3.插入12.34567,最后查询结果为12.346;
所以,在使用浮点型的时候,还是要注意陷阱的,要以插入数据库中的实际结果为准。

字符串数据类型
char(n)     固定长度,最多255个字符
varchar(n)  可变长度,最多65535个字符
tinytext    可变长度,最多255个字符
text        可变长度,最多65535个字符
mediumtext  可变长度,最多2的24次方-1个字符
longtext    可变长度,最多2的32次方-1个字符

1.char(n)和varchar(n)中括号中n代表字符的个数,并不代表字节个数,所以当使用了中文的时候(UTF8)意味着可以插入m个中文,但是实际会占用m*3个字节。
2.同时char和varchar最大的区别就在于char不管实际value都会占用n个字符的空间,而varchar只会占用实际字符应该占用的空间+1,并且实际空间+1<=n。
3.超过char和varchar的n设置后,字符串会被截断。
4.char的上限为255字节,varchar的上限65535字节,text的上限为65535。
5.char在存储的时候会截断尾部的空格,varchar和text不会。
6.varchar会使用1-3个字节来存储长度,text不会。

更多优化内容如下:http://www.jb51.net/article/55853.htm

mysql开启远程连接

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
flush privileges;

left join、inner join区别

left join:
    以左表为主,将左表全部记录取出来,右表只取出符合条件的记录,不符合条件的记录设为NUll,同时此时左表的任何不空的判断都无效,右边的不为空也无效
    取并集

inner join:
    取交集,属于任何条件有效

1042 can't get hostname for your address解决办法
vim /etc/my.cnf

在[mysqld]节点下新增或修改如下两行
skip-name-resolve

忽略主机名的方式访问

lower_case_table_names=1

忽略数据库表名大小写

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 226,979评论 6 528
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 97,750评论 3 412
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 174,647评论 0 373
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 62,299评论 1 307
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 71,104评论 6 405
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 54,623评论 1 320
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 42,716评论 3 434
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 41,873评论 0 285
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 48,380评论 1 330
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 40,344评论 3 354
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 42,496评论 1 365
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 38,055评论 5 355
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 43,756评论 3 343
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 34,146评论 0 25
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 35,410评论 1 281
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 51,072评论 3 386
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 47,485评论 2 370

推荐阅读更多精彩内容