Mysql安装及常用命令
部分内容转载于
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安装及常用命令的更多相关文章
- MySQL安装和常用命令
一.安装MySQL groupadd mysqluseradd -r -g mysql mysqlgroups mysqlfind / -name mysql | xargs rm -rfwget h ...
- MySQL数据库操作常用命令
MySQL数据库操作常用命令DOS连接数据库1.安装MySQL配置好环境2.运行cmd命令net start mysql3.找到mysql文件根目录输入命令mysql -h localhost -u ...
- mysql数据库管理、常用命令及函数(10.10 第十八天)
数据库管理: MYSQL 轻量级数据库,适用于中小型企业,性能好,开源的(免费的) MSSQL 微软开发的,需要安装在NT系统中,不支持跨平台,适用于中大型企业 ACCESS 小巧方便,适用于小型企业 ...
- mysql 登录及常用命令
一.mysql服务的启动和停止 mysql> net stop mysql mysql> net start mysql 二.登陆mysql mysql> 语法如下: mysql - ...
- ios开发环境配置及cordova安装与常用命令
一.ios开发环境配置 1.首先要有台Mac Book,如果有Mac Book,跳过步骤2.3.4,如果没有,执行步骤2.3.4: 2.下载并安装VMware Workstation,最好是下最新版本 ...
- Git安装以及常用命令(图文详解)
**Git安装以及常用命令** 1.下载安装Git,傻瓜式安装相信大家都会. 官网下载地址:[https://git-scm.com/downloads] 2.Git基本操作 (1)git --ver ...
- linux基础学习之软件安装以及常用命令
linux基础学习之软件安装以及常用命令 调用中央仓库: yum install wget 然后下载nodejs: wget https://nodejs.org/dist/v10.14.2/node ...
- Git安装和常用命令
Git是目前世界上最先进的分布式版本控制系统!!! Git能自动帮我们记录每次文件的改动,还可以让同事协作编辑. 接下来,简单的介绍下Git的安装和常用命令: Git安装: 1.Windows系统,进 ...
- RabbitMQ入门教程(一):安装和常用命令
原文:RabbitMQ入门教程(一):安装和常用命令 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn ...
随机推荐
- Asp.net Core 异常日志与API返回值处理
需求: 1.对异常进行捕获记录日志 并且修改返回值给前端 解释: ILogger4是自定义的一个日志,更改它就好 解决方案1: 使用中间件进行异常捕获并且修改其返回值 public class Err ...
- tomcat安装与环境变量配置
1.安装tomcat 2.找到tomcat安装路径的bin文件夹 → 打开 startup.bat 3.打开浏览器输入网址 http://localhost:8080 4.配置CATALINA_BAS ...
- linux目录的读(r)、写(w)、执行(x)权限说明
linux目录的读.写.执行权限说明 1.可读r #表示具有浏览目录下面文件及子目录的权限.即ls dir 1)如果没有x权限,不能进到目录里,即无法 cd dir 2)如果没有x权限,ls列表可以看 ...
- html5+css3的神奇搭配
1.关于浮动 浮动的元素会脱离标准文档流(float),从而不占据空间,实现了一行排列多个元素的效果 ,但是又导致上级元素height消失,处理这种情况的方法就是有两种: 1.第一种在css里写个伪类 ...
- tune kubernetes eviction parameter
Highlight 本文会介绍kubernetes中关于集群驱逐的相关参数, 合理设置驱逐速率的考虑因素, 但是不会涉及node层面资源的驱逐阈值的设置. Basic 在kubernetes中, 如果 ...
- 准确率、精确率、召回率、F-Measure、ROC、AUC
先理解一下正类(Positive)和负类(Negetive),比如现在要预测用户是否点击了某个广告链接,点击了才是我们要的结果,这时,点击了则表示为正类,没点击则表示为负类. TP(True Posi ...
- Repository封装方法
1.创建依赖的实体类 /// <summary> /// 泛型实体基类 /// </summary> /// <typeparam name="TPrimary ...
- Yii2中indexBy()的使用
在项目开发中经常会使用到一些特殊的值作为数组的索引,一般可以先查询出数据后数组循环拼接成所需的格式.不过YII2框架提供了一种更简单的方法indexBy(). 参考Yii文档:https://www. ...
- Java用广度优先搜索快速搜索文件
背景 在开发的过程中,经常需要在文件系统里按某些条件搜索文件,比如音乐播放器扫描音乐,而搜索文件,大多人喜欢用递归的方式,而这也是最容易想到的方式.递归方式如果文件夹很深就容易造成栈溢出,而且不断的压 ...
- IT兄弟连 HTML5教程 使用盒子模型设计页面布局
布局所涉及的技术非常很多,足以另写单独的一本书了.在本节中主要介绍网站中最常用的布局方案,包括区块框居中.两列浮动.三列浮动及多列浮动的区块框. 1 居中设计 区块框居中的设计是在网页布局中常用的技 ...
