部分内容转载于

https://www.linuxidc.com/Linux/2016-09/135288.htm

https://www.cnblogs.com/rays-/p/8081798.html

在CentOS7安装mysql5.7

yum源 rmp包下载地址

https://dev.mysql.com/downloads/repo/yum/

下载mysql源

wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

安装mysql源

 yum localinstall mysql57-community-release-el7-.noarch.rpm

检查mysql源

yum repolist enabled | grep "mysql.*-community.*"

成功则有下图

需要更换版本可以在 /etc/yum.repos.d/mysql-community.repo切换,把需要的版本enabled=1,原来的修改成0

安装mysql

yum install mysql-community-server

守护进程操作

启动mysql  systemctl start mysqld
关闭mysql systemctl stop mysqld 开机自启动 systemctl enable mysqld
关闭自启动 systemctl disable mysqld

检查端口是否开启mysql,3306是mysql默认端口

 登入mysql

mysql随机生成一个密码,在/var/log/mysqld.log

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

后面那串随机的字符串就是密码

在终端输入

mysql -uroot -p

然后输入密码,进入mysql

修改密码,格式为 set password for 'root@localhost'=password('你要需改的密码');

如果出现以下提示,是因为mysql默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位

我们可以把这个密码检查策略关闭,找到mysql的配置文件 /etc/my.conf,添加一下两行

[mysqld]
validate_password=off

然后重启mysql服务

systemctl restart mysqld

进入mysql在修改密码

常用的SQL语句

数据库查询语言    专门用于查询数据 代表指令为select /show

数据操作语言       专门用于写入数据 代表指令instert update delete

事务处理语言       专门用于事务安全处理       代表指令 transaction

数据控制语言       专门用于权限管理              代表指令 grant / revoke

数据定义语言       专门用于结构管理              代表指令creat / drop

数据库操作

show databases     #查看全部数据库
show databases like ‘匹配模式’;   #查看指定数据库
匹配模式:
  _: 匹配当前位置单个字符、
  %:匹配指定位置多个字符

create database 数据库名    #创建数据库

drop database 数据库名    #删除数据库

use 数据库名字;   #选择数据库

 表操作

use 数据库名称     #先选择进入的数据库

show  tables    #查看当前数据库的全部表

create table 表名(字段名1  字段类型2  [ 字段名2 类型2 ]  )       #创建表

drop table 表名    #删除表

 alter table 表名 add 字段名 字段类型   #增加字段

设置远程用户访问,进入mysql的命令行且需要root权限, (其中% 表示所有主机都可以访问)

GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
FLUSH PRIVILEGES 刷新权限设置

创建用户

CREATE USER '用户名'@'host' IDENTIFIED BY '密码';

host可以是本地(localhost),也可以是任意主机(%),或者指定主机

删除用户

DROP USER '用户名'@'host';

查看全部用户

 select user,host from mysql.user

修改用户名,将root修改成admin

update mysql.user set user='admin' where user='root';

用户授权,需要刷新权限才能生效

GRANT 权限操作 ON 数据库名.表名 TO '用户名'@'host'
FLUSH PRIVILEGES

命令操作可以是 select create update delete等,全部权限可以输入ALL,全部的数据库的全部表名可以表示   *.*

例如   GRANT SELECT ON test_db.* TO 'test'@'localhost';

只能本地登入的test用户拥有读取test_db数据库下面的所有表

删除权限

REVOKE 权限操作 ON 数据库名.表名 FROM '用户名'@'host';

查看用户的权限

SHOW GRANTS FOR '用户名'@'host'

一些安全策略

0、备份文件

mysqldump -uroot -p --databases student >/var/lib/mysql/data2/student.sql

还原数据库

先创建原来的数据库,进入,然后还原

create database student;
use student;
source student.sql;

1、mysql中危险的配置项,可以对文件继续操作,即读取或写入

进入mysql的命令行输入 ,查看导入导出权限

show global variables like '%secure%';

如果secure_file_priv那一行是空的,这说明我们可以在任意范围进行文件导入或导出

如果是null,则说明禁止文件操作

如果是一个文件路径,则只能在该路径下面进行操作

在配置文件/etc/my.cnf下面添加,然后重启服务

secure_file_priv =null

2、禁止用户读取本地文件或访问操作系统上的文件

在/etc/my.cnf添加,然后重启服务

set-variable=local-infile=0

如果报错就在配置文件添加

local-infile=0

3、删除test库,匿名用户可以访问,存在风险

 drop database test;

4、删除无用的用户,修改root用户的名称

参考前面的命令

5、删除历史记录

访问 cat ~/.mysql_history,会发现之前mysql模式下输入的命令都保存在此,将其删除

 cat /dev/null > ~/.mysql_history

Mysql安装及常用命令的更多相关文章

  1. MySQL安装和常用命令

    一.安装MySQL groupadd mysqluseradd -r -g mysql mysqlgroups mysqlfind / -name mysql | xargs rm -rfwget h ...

  2. MySQL数据库操作常用命令

    MySQL数据库操作常用命令DOS连接数据库1.安装MySQL配置好环境2.运行cmd命令net start mysql3.找到mysql文件根目录输入命令mysql -h localhost -u ...

  3. mysql数据库管理、常用命令及函数(10.10 第十八天)

    数据库管理: MYSQL 轻量级数据库,适用于中小型企业,性能好,开源的(免费的) MSSQL 微软开发的,需要安装在NT系统中,不支持跨平台,适用于中大型企业 ACCESS 小巧方便,适用于小型企业 ...

  4. mysql 登录及常用命令

    一.mysql服务的启动和停止 mysql> net stop mysql mysql> net start mysql 二.登陆mysql mysql> 语法如下: mysql - ...

  5. ios开发环境配置及cordova安装与常用命令

    一.ios开发环境配置 1.首先要有台Mac Book,如果有Mac Book,跳过步骤2.3.4,如果没有,执行步骤2.3.4: 2.下载并安装VMware Workstation,最好是下最新版本 ...

  6. Git安装以及常用命令(图文详解)

    **Git安装以及常用命令** 1.下载安装Git,傻瓜式安装相信大家都会. 官网下载地址:[https://git-scm.com/downloads] 2.Git基本操作 (1)git --ver ...

  7. linux基础学习之软件安装以及常用命令

    linux基础学习之软件安装以及常用命令 调用中央仓库: yum install wget 然后下载nodejs: wget https://nodejs.org/dist/v10.14.2/node ...

  8. Git安装和常用命令

    Git是目前世界上最先进的分布式版本控制系统!!! Git能自动帮我们记录每次文件的改动,还可以让同事协作编辑. 接下来,简单的介绍下Git的安装和常用命令: Git安装: 1.Windows系统,进 ...

  9. RabbitMQ入门教程(一):安装和常用命令

    原文:RabbitMQ入门教程(一):安装和常用命令 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn ...

随机推荐

  1. 【JS】382- JavaScript 模块化方案总结

    本文包含两部分,第一部分通过简明的描述介绍什么是 CommonJS.AMD.CMD.UMD.ES Module 以及它们的常见用法,第二部分则根据实际问题指出在正常的 webpack 构建过程中该如何 ...

  2. Weed3 for java 新的微型ORM框架

    Weed3,微型ORM框架(支持:java sql,xml sql,annotation sql:存储过程:事务:缓存:监听:等...) 05年时开发了第一代: 08年时开发了第二代,那时候进入互联网 ...

  3. Linux三剑客之awk命令详解

    一.awk介绍 AWK是一种优良的文本处理工具.它不仅是 Linux 中也是任何环境中现有的功能最强大的数据处理引擎之一.这种编程及数据操作语言(其名称得自于它的创始人 Alfred Aho .Pet ...

  4. C语言每日一练——第1题

    一.程序功能 程序的功能是:将大于整数m且紧靠m的k个素数存入数组xx.并把in.dat文件的内容输入到程序,并把输出结果输出道out.dat文件夹中例如:若输入17,5 则应该输入:19,23,29 ...

  5. SpringBoot电商项目实战 — ElasticSearch接入实现

    如今在一些中大型网站中,搜索引擎已是必不可少的内容了.首先我们看看搜索引擎到底是什么呢?搜索引擎,就是根据用户需求与一定算法,运用特定策略从互联网检索出制定信息反馈给用户的一门检索技术.搜索引擎依托于 ...

  6. spring源码学习(四)-spring生命周期用到的后置处理器

    生命周期的九大后置处理器 第一次调用后置处理器org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory# ...

  7. ChinaSys 一些心得

    这周不要脸的和老板一起去了 ChinaSys,可以说整个中国搞系统最nb的一批人的学术交流了.一圈报告听下来, 有几点心得,不多,可能也没有那么深刻. 系统领域的开源框架并不多 搞系统和搞AI,搞算法 ...

  8. 1、手写Unity容器--极致简陋版Unity容器

    模拟Unity容器实例化AndroidPhone 思路: 1.注册类型:把类型完整名称作为key添加到数据字典中,类型添加到数据字典的value中 2.获取实例:根据完整类型名称也就是key取出val ...

  9. GIS面试小知识点

    1.什么是地理信息系统?简述其基本功能 它是随着地理科学.计算机技术.遥感技术和信息科学的发展而产生的一门科学.就应用而言,是对空间数据进行  组织.管理.分析.显示  的系统.其实本质上它探讨的就是 ...

  10. mysql多字段内容并到单字段中的操作

    ; SELECT 序号, ryxm `人员姓名`, cylb `成员类别`, gzdw `工作单位`, zc `职称`, GROUP_CONCAT(zzqmc) AS `著作权名称`--多字段合并到一 ...