首页 > 代码库 > MySql安装与基本使用;

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’;    //配置权限;

MySql安装与基本使用;