MySQL数据库进阶实战--笔记

MySQL数据库进阶实战

MySQL数据库快速部署实践

  1. 更新YUM源

    rpm -Uvh  http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
  2. 安装MySQL

    yum -y install mysql-community-server --nogpgcheck

    执行完成后,使用命令mysql -V查看是否安装成功

  3. 启动MySQL服务

    systemctl start mysqld
  4. 设置MySQL服务开机自动启动

    systemctl enable mysqld
  5. 配置MySQL的root用户密码

    1. 查看初始化密码

      grep 'temporary password' /var/log/mysqld.log

    2. 登录root用户

      mysql -uroot -p

      输入上面查到的密码登录MySQL

    3. 修改root用户的密码

      set global validate_password_policy=0;  #修改密码安全策略为低(只校验密码长度,至少8位)。
      ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678';
    4. 赋予root用户远程管理权限(这个操作可以允许当前帐号通过工具连接数据库操作,非常好用~)

      GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '12345678';
    5. 退出数据库

      exit
  6. 基础命令练习

    使用shell命令登录mysql:mysql -uroot -p12345678

    create database test; #创建test数据库
    show databases; #查看当前数据库列表
    use mysql; #连接到mysql数据库
    show tables; #查看当前数据库下的表

    使用exit返回至shell界面,将test数据库备份到当前目录

    mysqldump -uroot -p test >test.sql

    输入密码后等待备份完成,使用ll查看备份文件

    我们还可以将备份文件导入到数据库中(-D,指定导入的数据库为test)

    mysql -uroot -p -Dtest<test.sql

    常用SQL(记得每一条语句要带分号;)

    use test;
    create table test1 (id int,name char(20));#创建test1表格,包含id,name字段
    insert into test1 values(1,"zhangsan");#插入一条数据
    #新增语法:INSERT INTO 表名称 VALUES (值1, 值2,....);
    select * from test1;#查询表数据
    update test1 set name = "lisi" where id =1;#更改表数据
    #更新语法:UPDATE 表名称 SET 列名 = 值 WHERE 表名称 = 值;
    delete from test1 where id =1;#删除数据
    #删除语法:DELETE FROM 表名称 WHERE 列名称 = 值;
    drop table test1;#删除表
    drop database test;#删除数据库
    

数据库基础(MySQL)

新增

INSERT INTO USER
       (col_name1, col_name2, col_name3, col_name4)#指定新增某些字段
VALUES
       ('VALUE1', 2, 'VALUE3', 1),
       ('VALUES2', 3, 'VALUES4', 4);#自增值可以不填写
INSERT INTO USER #不标注插入的哪些字段,后面的值就必须和表设计的排序、字段数量保持一直
VALUES
       ('VALUE1', 2, 'VALUE3', 1),
       ('VALUES2', 3, 'VALUES4', 4);

查询

SELECT col_name,...
  FROM table_name
 WHERE where_condition
 GROUP BY col_name,...
HAVING where_condition
 ORDER BY col_name,...
 LIMIT offset,row_count

更新

UPDATE table_name SET col_name=expr,... WHERE where_condition

删除

DELETE FROM table_name WHERE where_condition
SELECT a.sid,
       a.score,
       s.sname
  FROM
  (SELECT sid, score FROM sc WHERE cid= "102") a,
       (SELECT sid, score FROM sc WHERE cid= "101") b,student as s
 WHERE a.score > b.score
   AND a.sid= b.sid
   AND s.sid= a.sid
上一篇:when is view bound to its corresponding controller instance


下一篇:ECS学习day6