你的位置:首页 > 数据库

[数据库]mysql颠覆实战笔记(一)


版权声明:笔记整理者亡命小卒热爱自由,崇尚分享。但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的《web级mysql颠覆实战课程 》。如需转载请尊重老师劳动,保留沈逸老师署名以及课程来源地址。

一、MYSQL安装设置简述。

1、本课程基于MYSQL 5.7.9教学。

2、课程使用的是centos 6.7作为服务器版本
   进入官网,选择 http://dev.mysql.com/downloads/repo/yum/
   直接的地址(本课程服务器)http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm
   安装步骤:http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/

3、登录MySQL测试:mysql -h localhost -u root -P.  默认密码为空。

 

二、修改密码与一些基本注意点。

  首先参考手册 :http://dev.mysql.com/doc/refman/5.7/en/upgrading-from-previous-series.html#upgrade-system-table-changes

  1、使用临时密码进入修改初始密码:

   ALTER USER USER() IDENTIFIED BY ‘ YOUR PASSWORD ';

   2、使用NAVICAT连接数据库。

三、新建一个库 jtthink,选择库属性->字符集 utf8 -- UTF-8 Unicode,规则utf8_general_ci。

四,InnoDB与MyISam.

  1、InnoDB支持外键和事务,而MyISam并不支持。

  2、事务性表应该使用InnoDB.频繁读取如select操作很频繁的应该使用MyISAM引擎。
  3、使用show table status from 数据库名 ;查看该库用所有表的基本状态,包括引擎。
                

    

  6、我们写一个存储过程,插入10条数据,然后比较两个引擎的效率。

  在NAVICAT里,点击函数,选择过程。

 1 BEGIN 2    set @num=1; -- 设置一个变量 3    while @num<20 DO 4    if t=1 then 5    insert into user_sys(user_name,user_pwd) values(concat('user',@num),'password'); 6     7    ELSE 8         insert into user_sys2(user_name,user_pwd) values(concat('user',@num),'password'); 9    end if;10    set @num=@num+1;  -- 变量加111   end while;12 END

  7、使用call 函数名(参数)插入数据

  

  8、结果,完全不是一个数量级。

  表一:

  

  表二、

  

  好了,我们为下节课做准备,给两个表分别灌入1万条数据。

 

s