erwewwewe 发表于 2017-3-16 14:30:03

MySql安装与基本使用

                      mysql的安装:
下载mysql-5.5.54-linux2.6-x86_64.tar.gz
# tar -xf mysql-5.5.54-linux2.6-x86_64.tar.gz
# ln -sv mysql-5.5.54-linux2.6-x86_64 /usr/local/mysql

为保障安全性,创建mysql专属用户,不需要登录bash
# useradd mysql -b /sbin/nologin


使用程序包自带的初始化脚本,初始化mysql
# scripts/mysql_install_db --datadir=/mysql-date/mydate/ --user=mysql

复制自带的服务脚本到系统
# cp support-files/mysql.server /etc/rc.d/init.d/mysqld

在包中自带了3种配置文件模板:my-large.cnf,my-medium.cnf,my-small.cnf,分别对应不同级别的mysql,根据自行需求进行复制;
# cp my-large.cnf /etc/my.cnf

由于在初始化时重新指定了datadir的位置,所以在配置文件中需要重定义此项;
# vim /etc/my.cnf
<< datadir=/mysql-date/mydate

# vim /etc/profile.d/mysqld.sh
<< export PATH=/usr/local/mysql/bin:$PATH

在启动服务之前要记得更改mysql相关目录的属主和属组;
# chown -R root:mysql /usr/local/mysql
# chowm -R mysql:mysql /mysql-date/mydate    //注意数据目录的所属问题,如果不更改此项,会提示无法创建pid文件,导致无法启动服务;

启动并测试;

基础操作:
DCL:数据控制语言,实现权限的赋予与收回
    GRANT,REVOKE
DDL:数据定义语言,用来创建表,索引等基本组件的语句
    CREATE,DROP,ALTER
DML:数据操作语言,负责增删查改等操作
    INSERT,DELETE,SELECT,UPDATE

MYSQL的客户端使用:
在mysql中,关键字要使用大写,由此来区分关键字与内容,并且每行以;结尾,有的时候,尤其是改开始接触mysql时经常会因为忘记打;而进入续航模式,此时可以输入;来退出续航;


配置修改mysql的启动密码:
> SET PASSWORD FOR ‘root’@‘localhost’= PASSWORD(‘密码’);

基础操作命令:
    SHOW DATABASES;    //查看有权限的库,即目录;
    USE 库名;    //选择默认要进行操作的库;

    SHOW TABLES;    //查看默认操作库中的表单;
    DESC 表单名;    //查看表单的结构;

    SELECT:选定操作,先进行选择,再进行后续操作;
      SELECT User,Host,Password FROM user;    //选择user表单里的User,Host,Password字段并查看;
      可以配合WHERE使用来进行条件操作;

    CREATE:创建命令,可以创建DATABASE和TABLE;
      CREATE DATABASE 库名;    //创建库;
      CREATE TABLE 表名 (字段 类型,字段2 类型2,字段3 类型3......);
            常用的类型:
                字符型:
                  char():固定长度,不区分大小写;
                  varchar():非固定长度,不区分大小写;

                  binary():固定长度,区分大小写;
                  varbinary():非固定长度,区分大小写;

                  text():用于大段文本,不区分大小写;

                数字型:
                  整型:
                        tinyint:微整形,一个字节,范围:-128--+127;
                        smallint:小整型,二个字节,范围:-32768--+32767;
                        mediumint:中整型,三个字节;
                        int:整型,四个字节;
                        bigint:大整型,八个字节;
                  浮点型:
                        float:单精度浮点型;
                        double:双精度浮点型;
                  时间型:
                        date:日期;
                        time:时间;
                        datetime:日期时间;
                        timestamp:时间戳;
                  其他:
                        ENUM:枚举型,多种选一,单选;
                        SET:集合型,多种选多,多选;

                字段修饰符:
                  NULL:表示可以为空;
                  NOT NULL:不可以为空;
                  UNSIGNED:正数;
                  DEFAULT:默认值;
                  AUTO_INCREMENT:自动增长,不能与默认值一起使用;
                  PRIMARY KEY:主键;
                  UNIQUE KEY:唯一键;

例:mysql> CREATE TABLE tb_name (Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,Name char(20) NOT NULL,Age tinyint NOT NULL,Gender ENUM('F','M') DEFAULT'F' NOT NULL);

    INSERT:插入,编辑表数据;
      格式:INSERT INTO 表名 (字段1,字段2,字段3,......) VALUE (值1,值2,值3,......),(值1,值2,值3,......)....;

例:mysql> INSERT INTO tb_name (Name,Age,Gender) VALUE ('apple',18,'M'),('bider',16,'M'),('cat',17,'F');

    WHERE:用于条件匹配操作,匹配某个字段进行条件测试;
      WHERE可以进行逻辑测试;
      SELECT Age FROM tb_name WHERE Age < 18;

      LIKE:进行字符串比较测试;
      SELECT Name FROM tb_name WHERE Name LIKE ‘%t’;
      %:匹配任意长度的任意字符;
      _:匹配任意单个字符;

    UPDATE:修改操作;
      UPDATE 表名 SET 字段 = 值 WHERE 字段 条件;    //此处的条件根据要更改的字段类型变化如果是字符型则使用LIKE,其他类型则不用;

mysql> SHOW CREATE TABLE text2;   //显示创建表text2时,用的语句;
mysql> SHOW ENGINES;   //查看数据库支持的存储引擎;
mysql> SHOW TABLE STATUS\G   //查看每个表的状态信息;
mysql> SHOW TABLE STATUS LIKE '%S'   //查看以S结尾的表的状态信息;

字符集:实现字节编码到汉字的映射;
   GBK
   GB2312
   GB18030
   UTF-8
mysql> SHOW CHARACTER SET;   //查看字符集;

每种字符集可以能存在多种不同的排序规则:

mysql> SHOW COLLATION;   //查看排序规则;

GRANT ALL PRIVILEGES ON db_name.tb_name TO ‘username’@‘hostname’ IDENTIFIED BY ‘your_password’;    //配置权限;
                  

页: [1]
查看完整版本: MySql安装与基本使用