操作系统:CentOS 7.2  64位

mySQL版本:mysql-5.6.35

安装过程:

(1)首先从mysql官网下载 MySQL Community Server 安装包。

选择对应的版本(32位或者64位):

本文以64位安装包为例! MySQL-5.6.35-1.linux_glibc2.5.x86_64.rpm-bundle.tar

(2)解压安装包:

tar  -xvf  MySQL-5.6.35-1.linux_glibc2.5.x86_64.rpm-bundle.tar

查看解压之后的文件:

MySQL-server-5.6.35-1.linux_glibc2.5.x86_64.rpm
MySQL-client-5.6.35-1.linux_glibc2.5.x86_64.rpm

MySQL-shared-5.6.35-1.linux_glibc2.5.x86_64.rpm
MySQL-devel-5.6.35-1.linux_glibc2.5.x86_64.rpm

MySQL-shared-compat-5.6.35-1.linux_glibc2.5.x86_64.rpm
MySQL-embedded-5.6.35-1.linux_glibc2.5.x86_64.rpm

MySQL-test-5.6.35-1.linux_glibc2.5.x86_64.rpm

其中server和client就是我们需要安装的rpm包!

(3)安装之前的清理工作

系统已经安装了其他版本的mysql-libs包和mysql数据库文件导致不兼容。同过以下命令清除:

yum remove mysql-libs

然后,还要详细检查卸载MySQL安装的所有文件,否则在后续安装发生各种错误:参见 CentOS下MySQL的彻底卸载

(4)安装mysql-server

rpm -ivh  MySQL-server-5.6.35-1.linux_glibc2.5.x86_64.rpm --nosignature

注意:如果报如下错误,需要加上 --nosignature

warning: MySQL-server-5.6.35-1.linux_glibc2.5.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

如果没有报错,可以不用加 --nosignature

(5)安装mysql-client

rpm -ivh  MySQL-client-5.6.35-1.linux_glibc2.5.x86_64.rpm   --nosignature   (同上)

(6)运行服务

service mysql start

(7)设置mysql的 root 用户密码

首先关掉mysql服务:/etc/init.d/mysql stop

安全模式启动mysql:mysqld_safe --skip-grant-tables &   (&,表示在后台运行)

依次输入下面的命令:

# mysql
mysql> use mysql;
mysql> UPDATE user SET password=password("123456") WHERE user='root';   
mysql> flush privileges;
mysql> exit;

##其中的密码值就是root用户的登录密码。                        
##本来mysql是不分大小写的,但是这个是修改的mysql中的mysql数据库的具体的值,要注意到。

(8)使用 root 用户 登录mysql,需要输入密码!

mysql -u root -p

第一次登录之后需要更改root用户的密码,不然任何操作都会报错:

ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

使用下面命令修改密码:

mysql> set password=PASSWORD('123456');

然后创建一个mysql用户:

mysql> CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';

其中 myuser是将要创建的用户名,mypassword是对应的登录密码。

运行下列命令,验证帐号是否创建成功​:
mysql> SELECT host, user, password FROM mysql.user WHERE user='myuser';

(9)赋予MySQL用户权限

一个新建的MySQL用户没有任何访问权限,这就意味着你不能在MySQL数据库中进行任何操作。你得赋予用户必要的权限。以下是一些可用的权限:

●ALL:所有可用的权限

●CREATE:创建库、表和索引

●LOCK_TABLES:锁定表

●ALTER:修改表

●DELETE:删除表

●INSERT:插入表或列

●SELECT:检索表或列的数据

●CREATE_VIEW:创建视图

●SHOW_DATABASES:列出数据库

●DROP:删除库、表和视图

运行以下命令赋予"myuser"用户特定权限。

例如,为所有数据库/表赋予 CREATE 和 INSERT 权限:

mysql> GRANT CREATE, INSERT ON *.* TO 'myuser'@'localhost';

验证给用户赋予的全权限:

mysql> SHOW GRANTS FOR 'myuser'@'localhost';

将全部的权限赋予所有数据库/表:

mysql> GRANT ALL ON *.* TO 'myuser'@'localhost';

创建和设置一个MySQL用户最后的一个重要步骤:

mysql> FLUSH PRIVILEGES;

如此一来更改便生效了。

(具体参见:http://blog.sina.com.cn/s/blog_c2ab3e4b0102vox3.html

(10)赋予用户远程登录mysql的权限

MySQL默认root用户只能本地访问,不能远程连接管理mysql数据库Linux如何开启mysql远程连接?设置步骤如下:
首先需要通过root用户登录mysql。

然后为myuser用户设置远程登录的权限。

mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'  IDENTIFIED BY  'mypassword'  WITH GRANT OPTION;

这条命令是授与myuser用户从任何其它主机发起的访问(通配符%),密码是mypassword。

然后执行下面的命令使更改生效:

mysql> FLUSH PRIVILEGES;

至此,linux上面安装mysql的全过程完毕!

参考:
 
Linux下的tar压缩解压缩命令详解      http://www.cnblogs.com/qq78292959/archive/2011/07/06/2099427.html
linux搭建C开发环境        http://www.cnblogs.com/mingforyou/p/4118066.html
 
CentOS7安装MySQL冲突和问题解决小结        http://blog.csdn.net/typa01_kk/article/details/49059729
 
Linux下修改Mysql的用户(root)的密码        http://www.cnblogs.com/daizhuacai/archive/2013/01/17/2865138.html
 

如何通过Linux命令行创建和设置一个MySQL用户    http://blog.sina.com.cn/s/blog_c2ab3e4b0102vox3.html

Linux安装MySQL全过程的更多相关文章

  1. linux安装mysql后root无法登录 sql 无法登录

    linux安装mysql后root无法登录 问题:[root@localhost mysql]# mysql -u root -pEnter password: ERROR 1045 (28000): ...

  2. linux安装mysql~~~mysql5.6.12

    Linux安装mysql服务器 准备: MySQL-client-5.6.12-1.rhel5.i386.rpm MySQL-server-5.6.12-1.rhel5.i386.rpm 首先检查环境 ...

  3. linux安装mysql全纪录[包括yum和rpm安装,编码,远程连接以及大小写问题]

    linux安装mysql全纪录[包括yum和rpm安装,编码,远程连接以及大小写问题] 一.查看mysql是否已经安装 使用“whereis mysql”命令来查看mysql安装路径: [root@h ...

  4. linux安装mysql服务分两种安装方法:

    linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有十多M,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点是安装速度 ...

  5. linux安装MySQL后输入mysql显示 ERROR 2002 (HY000): Can't connect to local MySQL server through socket

    我是小白,大佬勿喷 *** linux安装MySQL后输入mysql显示 ERROR 2002 (HY000): Can't connect to local MySQL server through ...

  6. Linux 安装Mysql(图文教程)

    原文:Linux 安装Mysql(图文教程) 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net ...

  7. Linux 安装 MySQL 8 数据库(图文详细教程)

    本教程手把手教你如何在 Linux 安装 MySQL 数据库,以 CentOS 7为例. 1. 下载并安装 MySQL 官方的 Yum Repository wget -i -c https://re ...

  8. linux 安装mysql数据库——yum安装法

    mysql数据库有多种安装方式,本文只介绍在Linux服务器上最实用.最快捷的mysql server安装方法.一.Linux服务器yum安装(CentOS6.3 64位) 所有在服务器上执行的命令, ...

  9. 虚拟机下linux安装mysql,apache和php

    由于腿伤了,卧床在家折腾下linux,尝试用虚拟机装mysql,apche和php.中间各种波折,装了好几天,觉得有些经验还是要记录下来,让自己别忘了:) 按照下面这篇文章的方法,基本可以顺利安装成功 ...

随机推荐

  1. 2、ambari搭建HDP集群

    一.平台环境 操作系统:CentOS release 6.5 (Final) Java版本:jdk1.8.0_60 Ambari版本:2.2.1.0 HDP版本:2.4.0 MySQL版本:MySQL ...

  2. 3069: [Pa2011]Hard Choice 艰难的选择

    Description Byteasar是一个很纠结的人.每次他经过Bytetown的时候都知道有至少2条不同的路径可以选择,这导致他必须花很长时间来决定走哪条路.Byteasar最近听说了Bytet ...

  3. Java中的自动类型转换/隐式类型转换

    整型.实型(常量).字符型数据可以混合运算.运算中,不同类型的数据先转化为同一类型,然后进行运算. 转换从低级到高级. 自动类型转换必须满足转换前的数据类型的位数要低于转换后的数据类型,例如: sho ...

  4. Ladder面积

    package com.hanqi; import javax.swing.plaf.synth.SynthSeparatorUI; //梯形 public class Ladder { double ...

  5. 1095 Cars on Campus

    题意:给出N量车的车牌号,进出的时间,进/出状态.然后给出若干个查询,要求计算在每一查询时刻校园内停着的汽车数量,最后输出这一天中停放时间最长的车辆(若车不止一辆,则按字典序输出)以及停放时间.注:查 ...

  6. MySQL 库、表

    1.库 1.库的基本操作 1.查看已有的库 show databases; 2.创建库(指定默认字符集) create database 库名 default charset=utf8; 3.查看创建 ...

  7. android.support.v4.app.Fragment vs android.app.Fragment 的区别

    android.support.v4.app.Fragment vs android.app.Fragment 的区别 我开过平板相关应用,用了Fragment来处理.后来重新开发另外一个应用,直接引 ...

  8. Git版本控制:Github的使用之 多人协作及参与项目

    版权声明:本文为博主皮皮http://blog.csdn.net/pipisorry原创文章,未经博主允许不得转载.   目录(?)[-] Git多人协作 从远程库克隆 使用GitHub参与开源项目- ...

  9. Spring中application*的使用

    ApplicationAware 加载Spring配置文件时,如果Spring配置文件中所定义的Bean类实现了ApplicationContextAware 接口,那么在加载Spring配置文件时, ...

  10. oracle用户具有的权限和角色

    如何查看一个oracle用户具有的权限和角色 1.查看所有用户: select * from dba_users; select * from all_users; select * from use ...