环境

  • oracle linux7.3

  • 数据库:MySQL-5.7.20

mysql的安装

  • 先安装依赖的插件
yum install libaio
  • 去官网下载mysql-5.7.20的tar.gz包;
https://dev.mysql.com/downloads/mysql/
# 将下载包解压到/usr/local/目录下
tar mysql-advanced-5.7.20-linux-glibc2.12-x86_64 -C /usr/local
# 创建一个mysql的用户组
groupadd mysql
# 为用户组添加用户
useradd -r -g mysql mysql
cd /usr/local
# 为解压文件创建一个简单的软链接
ln -s mysql-advanced-5.7.20-linux-glibc2.12-x86_64 mysql
cd mysql
# 创建一个用户数据的文件
mkdir mysql-files
# 将该文件夹交给mysql组下的mysql用户
chown mysql:mysql mysql-files
# 授权
chmod 750 mysql-files
# 执行初始化脚本
cd bin
./mysqld --initialize --user=mysql # ./mysql_intsall_db脚本初始化方式已经被弃用
# 添加加密
./mysql_ssl_rsa_setup
# 安全启动mysql
./mysqld_safe --user=mysql&

注意:

  • 执行初始化后会出现如下,提示默认密码,记住这个密码
A temporary password is generated for root@localhost: XXXXXXX, XXXXXXX
  • 登录mysql修改初始密码
mysql -u root -p
set password=password('new_password')
  • 如果是系统自带的mysql版本,第一次登陆的时候也需要修改初始密码;
# 去日志找到初始随机密码
cd /var/log
cat mysqld.log | grep password
  • 出现‘A temporary password is generated for root@localhost: xxxxxxx’就是root用户的初始随机密码

  • 更多详细内容参见mysql 5.7以上修改初始密码

  • 将mysqld添加到系统环境变量

vi /etc/profile
# 在末尾添加
export MYSQL_HOME="/usr/local/mysql/"
export PATH="$PATH:$MYSQL_HOME/bin"
# 应用配置
source /etc/profile
  • 设置开机自启动
# 编辑启动脚本
vi smysql
#!/bin/sh
#chkconfig: 2345 30 70
/usr/local/mysql/support-files/mysql.server start # 注册到自启动服务
chkconfig --add smysql
chkconfig smysql on

用户相关

  • 查看当前MySQL的所有的用户
use mysql;
select host,user from mysql.user;
  • 查看mysql用户的权限
show grants for root@'localhost';
  • MySQL创建一个用户
# create user "用户的名称"@"主机的IP,如果任意使用%代替" identified by "登陆的密码,为空则没有密码";
create user 'usrabc'@'%' identified by 'usrabc';
  • 用户授权

授权格式:grant 权限 on 数据库 to 用户名@登录主机;

说明:

  1. 权限:指的是privileges,可以使select,insert等,所有的权限使用all;
  2. 数据库:写数据库名,表名,所有数据库用.;
  3. 用户名@登录主机:给授权的用户和指定的主机,所有主机使用'%';
  • 注意:

授权的用户不能对其他用户进行授权,如果想让该用户可以授权,用以下命令:

grant 权限 on 数据库 to 用户名@登录主机 with grant option;
grant all privileges on *.* to 'username'@'%' with grant option;

# 刷新权限表
flush privileges; # 退出MySQL重启
service mysql restart
  • 设置更改用户的密码
# root管理员更改其他的用户的密码
set password for 'username'@'%' = password('123456');
# 如果是用户修改密码
set password = password('123456');
  • 撤销用户权限
# 其相关的参数同用户的授权的一样
revore privileges on 数据库 from 'username'@'host';
  • 删除用户
# 使用root操作
drop user 'username'@'host';

卸载并彻底删除

  • 目前我的系统的使用yum安装的,因此使用yum卸载,
$ yum remove mysql
  • 还有许多的残留文件需要删除
# 全局查找mysql文件
find / -name mysql
# 将查找到的每个目录删除
rm -rf xxx -rf xxx ...
  • 重启后可以安装新的mysql了

mysql之安装和配置(一)的更多相关文章

  1. 第一章 数据库概述、MySQL的安装和配置

      第一章 数据库概述.MySQL的安装和配置   1.为什么要使用数据库 最早是纸质文件来存储数据 缺点:不易保存,占用空间大 计算机出现以后,采用软件来进行保存(excel) 缺点:容易损坏 文件 ...

  2. MySql的安装及配置详细指引!

    一.安装My Sql数据库 1.1,首先下载MySQL与HeidiSQL工具,双击打开后可以看到名为”mysql-5.0.22-win32 Setup.exe”的安装程序,双击执行该程序. 1.2,打 ...

  3. mysql免安装版配置与使用方法

    mysql免安装版配置与使用方法      以mysql-noinstall-5.1.6(win32)为例 1>把压缩文件mysql-noinstall-5.1.6-alpha-win32.zi ...

  4. .Neter玩转Linux系列之六:Linux下MySQL的安装、配置、使用

    一.Linux安装MySQL (1)下载安装包:https://dev.mysql.com/downloads/mysql/ (2)解压并安装 命令:tar zxvf 文件名 解压完成之后,重名一下文 ...

  5. Mysql数据库安装和配置

    http://blog.csdn.net/pipisorry/article/details/46773507 Mysql数据库安装和配置.mysql语法.特殊符号及正则表达式的使用.MySQL备份与 ...

  6. Mysql免安装版配置教程和常用命令图

    Mysql免安装版配置教程 图文版 配置环境变量 新建一个my.ini文件,添加下面内容 [mysqld] basedir=C:\\software\Mysql\mysql-5.7.14-winx64 ...

  7. 数据库之mysql篇(1)—— 数据库管理系统简介/mysql的安装、配置

    说mysql之前,还是先说说数据库. 什么是数据库: 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后 ...

  8. C#自制Web 服务器开发:mysql免安装版配置步骤详解分享

    mysql免安装版配置步骤详解分享 1.准备工作 下载mysql的最新免安装版本mysql-noinstall-5.1.53-win32.zip,解压缩到相关目录,如:d:\ mysql-noinst ...

  9. 1.Mysql的安装与配置

    1.Mysql的安装与配置1.1 Mysql的下载 mysql是开源数据库,开源数据库在中低端应用中占据了很大的市场份额. mysql社区版自由下载而且安全免费,官方不提供任何技术支持,适用于普通用户 ...

  10. Ubuntu 12.04下mysql的安装与配置

    转自:http://blog.csdn.net/ichsonx/article/details/9285935 准备  0. 获取 mysql-5.5.15-linux2.6-i686.tar.gz ...

随机推荐

  1. 第61天:json遍历和封装运动框架(多个属性)

    一.json 遍历  for in  关键字  for ( 变量 in  对象)  { 执行语句;  } 例如: var json = {width:200,height:300,left:50}co ...

  2. Lucene笔记一

    Lucene就是一个全文检索的工具,建立索引用的,类似于新华字典的目录 这里使用的是lucene-4.4.0版本,入门代码所需jar包如下图所示(解压lucene-4.4.0后的目录): 入门代码: ...

  3. RT-thread内核之事件

    一.事件控制块:在include/rtdef.h中 #ifdef RT_USING_EVENT /** * flag defintions in event */ #define RT_EVENT_F ...

  4. set类型没有单独取值功能 通过循环取值

    set类型没有单独取值功能 通过循环取值

  5. Django 2.0 学习(07):Django 视图(进阶-续)

    接Django 2.0 学习(06):Django 视图(进阶),我们将聚焦在使用简单的表单进行处理和精简代码. 编写简单表单 我们将用下面的代码,来替换之前的detail模板("polls ...

  6. CentOS 转义字符

    常用转义字符 反斜杠(\):使反斜杠后面的一个变量变为单纯的字符串. 单引号(''):转义其中所有的变量为单纯的字符串. 双引号(""):保留其中的变量属性,不进行转义处理. 反引 ...

  7. Docker的结构(6-13)

    一.Docker的结构. Docker命令不清楚的时候可以在命令的最后加上--help Docker和虚拟机的区别? 虚拟机的实现原理是:先模拟出一套硬件,然后在这基础上跑一个操作系统,然后在这个操作 ...

  8. BZOJ3521 [Poi2014]Salad Bar 【线段树 + 单调栈】

    题目链接 BZOJ3521 题解 容易想到用前缀和搞 如果我们令\(p\)为\(1\),\(j\)为\(-1\),记前缀和为\(s[i]\) 我们就是要找到一段区间\([l,r]\),使得 \[\fo ...

  9. 【DP】【P1941】【NOIP2014D1T3】飞扬的小鸟

    传送门 Description Flappy Bird是一款风靡一时的休闲手机游戏.玩家需要不断控制点击手机屏幕的频率来调节小鸟的飞行高度,让小鸟顺利通过画面右方的管道缝隙.如果小鸟一不小心撞到了水管 ...

  10. Application Error - The connection to the server was unsuccessful. (file:///android_asset/www/index.html)

    问题描述: PhoneGap+Sencha Touch开发的应用,打包后的APP或者调试期间,在启动的时候提示如下信息: Application Error - The connection to t ...