任务:
13.1 设置更改root密码
13.2 连接mysql
13.3 mysql常用命令
13.4 mysql用户管理
13.5 常用sql语句
13.6 mysql数据库备份恢复
使用xtrabackup备份innodb引擎的数据库 innobackupex 备份 Xtrabackup 增量备份 http://zhangguangzhi.top/2017/08/23/innobackex工具备份mysql数据/#三、开始恢复mysql
相关视频
链接:http://pan.baidu.com/s/1miFpS9M 密码:86dx
链接:http://pan.baidu.com/s/1o7GXBBW 密码:ue2f

13.1 设置更改root密码

1,更改环境变量让mysql启动更方便

  • 安装完mysql的正常启动:
/usr/local/mysql/bin/mysql -uroot
  • /usr/local/mysql/bin/添加到环境变量里
export PATH=$PATH:/usr/local/mysql/bin/
  • 使新添加的环境变量永久生效
vim /etc/profile
将以下内容添加至文件中
export PATH=$PATH:/usr/local/mysql/bin/
  • 这样每次开机都会执行这条命令
  • 单纯修改文件并不会马上生效,需要执行source /etc/profile

2,为空密码的root用户添加密码

mysqladmin -uroot password '123456'
  • 对于已经有密码的root用户无效

3,为已知密码的root用户修改密码

mysqladmin -uroot -p旧密码 password '新密码'

4,为不知道密码的root用户修改密码

4.1编辑mysql配置文件
vim /etc/my.cnf
4.2 在[mysqld]下边加一行
skip-grant-tables(5.7需要-tables老师讲的版本不需要)
4.3 重启服务
/etc/init.d/mysqld restart
4.4 不输入密码直接登录mysql
  • 因为设置了跳过授权,所以可以直接登录
4.5 在mysql>提示符下依次执行
mysql>use mysql
mysql> update mysql.user set authentication_string=password('密码') where userr='用户名';
  • 5.7以下的修改密码命令为update user set password=password(‘aminglinux’) where user=‘root’
4.6 退出mysql然后编辑/etc/my.cnf文件,把跳过授权那一行删除。
4.7 重启服务

13.2 连接mysql

1,连接本机

mysl -u用户名 -p密码

2,连接远程

mysql -u用户名 -p密码 -h域名或IP地址 -P端口号

3,通过sock文件连接

mysql -u用户名 -p密码 -S文件名(sock文件)
  • 默认以这种方式登录,也就是说-S选项可以省略
  • 这种方式只适合在本机

4,通过命令行直接操作mysql(不需要进入mysql)

mysql -u用户名 -p密码 -e "show databases"
  • 一般用于shell脚本中

13.3 mysql常用命令

1,查询库

show databases;
  • 注意mysql的命令需要以分号;结尾
  • 注意提示符变为mysql>说明进入mysql了。命令用法和外面不同。

2, 切换库 use mysql;

  • mysql是由一个个库构成的。其中,库又包含了表。表又包含了字段

3,查看库里的表 show tables;

4,查看表里的字段 desc tb_name(表的名称);

5,查看建表语句 show create table tb_name(表名称)\G;

  • \G的作用是改变显示的排序

6,查看当前用户 select user();

  • 如果登录用户是以127.0.0.1的IP登录的话,那么这里会显示为
+----------------+
| user()         |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)
  • 如果登录用户是以其他IP形式登录的话,那么这里会跟据IP来反解析出主机名。
+-----------+
| user()    |
+-----------+
| root@lnmp |
+-----------+
1 row in set (0.00 sec)

7,查看当前使用的数据库 select database();

8,创建库 create database db1(库名);

9,创建表 create table t1(`id` int(4), `name` char(40)) ENGINE=InnoDB CHARSET=utf8;

  • ti是表的名称
  • id是第一个字段,name是第二个字段
  • int(4)是这个字段的格式。int表示数字括号里的是这个字段的最大长度。
  • char表示字符
  • ENGINE指定表所用的引擎
  • CHARSET=utf8指定表的字符集

10,删除表 drop table t1;

11,查看当前数据库版本 select version();

12,查看数据库状态 show status;

13,查看各参数 show variables;

14,模糊查询参数 show variables like ‘max_connect%’;

  • 百分号%在这里是通配符。

15, 修改参数 set global max_connect_errors=1000;

  • 这里修改只是临时修改。
  • 如果想永久修改,请修改/etc/my.cnf文件内的参数。

16,查看队列 show processlist; show full processlist;

  • 加不加full的区别在于最后一行是否完整。

13.4 mysql用户管理

1,创建用户

grant all on *.* to '用户名'@IP identified by '密码';
  • 把所有的权限给user1
  • *.*表示所有的库和表。前边的星表示库,后边的星表示表。
  • @IP可以省略,默认是全部IP都可以访问。这里如果指定了,那么只有指定IP可以访问。
  • IP为’%'时表示所有的IP都可以使用。
  • grant命令不会记录到命令历史

2,跟据具体的情况授权

grant SELECT,UPDATE,INSERT on db1.* to 'user2'@'192.168.133.1' identified by 'passwd';
  • 给user2授予了SELECT,UPDATE,INSERT的权限
  • 并且user2可以操作db1库下的所有表。

3,查看当前用户的所有权限。

show grants;

4,查看指定用户的授权情况

show grants for user2@192.168.133.1;
  • 当需要为授权的用户增加IP时需要通过这个命令来查询授权内容。

13.5 常用sql语句

1,查询一个表的行数

select count(*) from mysql.user;
  • 库和表中间有一个点
  • MyISAM引擎下会非常快。InnoDB下会非常慢。

2,查看一个表的所有内容

select * from mysql.db;
  • 尽量不要使用这种方式查询。因为数据库非常大时。这样查会占用很多资源。

3,查询一个字段

select db from mysql.db;
  • 也可以查询多个字段。字段间使用逗号隔开

4,模糊查询

select * from mysql.db where host like '192.168.%';
  • 在mysql.db里查询host字段含有192.168.开头的内容。

5,为表添加记录。

insert into xy1.t1 values (1, 'abc');
  • 插入前要先搞清楚,这个表有几个字段是自己需要的。
  • 字段之间使用逗号隔开
  • 字符型的字段要加单引号和数字进行区分

6,修改记录

update db1.t1 set name='aaa' where id=1;

7,删除记录

delete from xy1.t1 where id=1;

8,清空一个表

truncate table db1.t1;

清空的是记录,字段依然存在

9,删除一个表

drop table db1.t1;

10,删除一个库

drop database xy1;

如果,对于一个没有备份过的表或库使用drop命令。那就等着被开除吧!

13.6 mysql数据库备份恢复

1,备份库

mysqldump -uroot -p79823871 mysql > /tmp/mysqlbak.sql
  • 不加> /tmp/mysql.sql的话,就会把备份过程显示出来

2,恢复库

mysql -uroot -p123456 mysql < /tmp/mysql.sql

3,备份表

mysqldump -uroot -p123456 mysql user > /tmp/user.sql
  • 这里库和表用空格分开

4,恢复表

mysql -uroot -p123456 mysql < /tmp/user.sql
  • 恢复表的时候只要填写表所在的库名即可。

5,备份所有库

mysqldump -uroot -p -A >/tmp/mysql_all.sql

6,只备份表结构

mysqldump -uroot -p123456 -d mysql > /tmp/mysql.sql
  • 只有表头字段,没有内容。

直播笔记

扩展内容
https://blog.csdn.net/xiaoyi23000/article/details/80521423
https://blog.csdn.net/u013399093/article/details/70568837
https://www.cnblogs.com/abobo/p/4242417.html
http://isky000.com/database/mysql-perfornamce-tuning-cache-parameter

保障4-0521任务打卡相关推荐

  1. 给你的手机加上安全保障,请设置SIM卡PIN码

    [手机上了锁,为啥还丢钱?专家支招:设置SIM卡PIN码]智能手机一旦丢失,不仅会带来诸多不便,甚至还会造成个人隐私泄露及财产损失. 然而很多人认为,自己已经设置了手机屏锁.支付密码.指纹锁等防御措施 ...

  2. 保障班4-0521任务打卡

    1.设置更改root密码 1.2 知道原来root的密码更改 1.3不知道原来root的密码的更改 2.连接mysql 2.1 本地连接 2.2mysql.sock连接 2.3TCP/IP协议连接 3 ...

  3. 揭秘阿里云 RTS SDK 如何实现直播降低延迟和卡顿

    简介:这个夏天,没什么能够比一场酣畅淋漓的奥运比赛来的过瘾.但是,在视频平台直播观看比赛也有痛点:"卡顿" 和 "延时".受限于不同地域.复杂的网络情况.传输速 ...

  4. 揭秘阿里云 RTS SDK 是如何实现直播降低延迟和卡顿

    简介: RTS NetSDK是未来直播和通信一体化SDK的基石.在RTS NetSDK之上,加一个Multimedia Framework,以及QoS消息处理,就可以构成一个一体化SDK.这对于已经有 ...

  5. 物联网卡开启养老新模式

    我国是世界人口大国,人口老龄化对我国影响尤为深远.随着我国人口老龄化趋势日益加快,老年人口比例逐渐上升,如何让老人老有所依.老有所养成为了社会发展的重要命题.养老院作为老年人生活.养老的一个重要场地, ...

  6. IC卡与ID卡的区别

    IC卡与ID卡的区别 射频IC卡按照使用功能分为身份识别ID 卡.消费的IC卡.物流标记卡.远距离识别卡. 目前,许多一卡通的项目,但对于是采用IC卡,还是采用ID卡做一卡通的问题上,还存在着很大的疑 ...

  7. 转有关IC卡与ID卡的重大区别

    转有关IC卡与ID卡的重大区别 2007年05月08日 上午 08:13 目前许多建设智能小区或楼宇的发展商都要上一卡通的项目,但对于是采用IC卡,还是采用ID卡做一卡通的问题上,还存在着很大的疑惑和 ...

  8. 闲鱼如何保障交易链路质量

    背景 闲鱼作为一款垂直交易社区APP,拥有复杂多样的业务场景:涉及c2c.回收寄卖.租房租赁.见面交易.验货担保等,复杂多变的交易模式.比如验货流程: 涉及39个状态机节点 横跨10+应用系统 涉及6 ...

  9. 网上0月租不限量、不实名的流量卡是真的吗?

    不能打电话,不能发信息,只上用于设备联网的卡你知道吗? 这种卡就是物联卡 物联卡是三大运营商为物联网服务企业提供的用于智能终端设备联网的,仅面对企业用户进行批量销售,不面向个人用户. 物联卡业务可通过 ...

  10. android 不卡 华为,荣耀Magic是什么系统 华为荣耀Magic手机是不是也不卡?

    此前传闻荣耀Magic将不再使用安卓系统,而采用自主操作系统,令不少花粉兴奋,不过随着荣耀Magic正式发布,该机搭载的操作系统也正式得到了确认,那么,荣耀Magic是什么系统?是否是和华为Mate9 ...

最新文章

  1. 文章3:车载LIDAR点云数据中杆状地物自动提取与分类
  2. java set 包含_关于Java的Set的集合是否包括问题,如下为什么不包括?
  3. JavaScript 内置对象(一):Array 对象(构造函数、属性和方法)
  4. python列表中 [ :: ]的用法
  5. 如何成为一个合格的算法工程师?这对你来说也许并不是很困难
  6. vue图片点击超链接_10秒钟,告别ppt中难看的超链接
  7. 【Python】hashlib模块实现MD5加密
  8. 我整理的一个经典分页程序(JSP的)
  9. java long short_Java Long类shortValue()方法与示例
  10. chrome里面模拟手机上打开网页的场景方法
  11. 苦于E63没有秒表,网上找的不好用,就自己写个简单的
  12. X明X源面试题《三》
  13. XenCenter导出和导入模板
  14. 野火i.MX Linux开发实战指南
  15. 把oracle卸载恢复,oracle干净卸载
  16. 第八届育才杯机器人比赛_太子湾学校:育才教育集团第五届“星升代·育才杯”校园文学大赛颁奖暨文学“微创作”比赛在太子湾学校隆重举行...
  17. 2013年 雷诺 Renault Zoe | 警告信息 “停车: 电力故障危险”
  18. 深度学习实战-图像风格迁移
  19. 驳“C语言已经死了”
  20. 双系统重启进入GRUB解决方案

热门文章

  1. 我的成神之路!Python 兵器谱(绝世神兵!收藏必备!)
  2. 涨知识!原来中国南海岛礁竟有这么诗情画意的名字!
  3. XTM计算机辅助翻译,计算机辅助翻译原理与实践
  4. 利用计算机实施盗窃罪300万,盗窃网络虚拟财产的新定性及刑法规制.pdf
  5. http协议中get和post的区别
  6. 普通人学python有什么用 ?学好了能干什么
  7. 日记侠:微信最简单最轻松的赚钱模式
  8. java fally是什么意思_fall是什么意思_fall的翻译_音标_读音_用法_例句_爱词霸在线词典...
  9. Ceph _backfill and recovery 之间的不同以及 peering理解
  10. js for循环倒序输出数组元素