安装 MySQL 服务的详细步骤如下:

1. 解压安装包

现在已经为大家下载好了 MySQL 5.7.25 的安装包,存放在 /root/software 目录下。首先进入此目录下,然后使用tar -xvf 命令进行解压即可使用。

2. 安装 MySQL 组件

使用 rpm -ivh 命令依次安装 mysql-community-common (服务器和客户端库的公共文件)、mysql-community-libs(MySQL 数据库客户端应用程序的共享库)、mysql-community-libs-compat(MySQL 之前版本的共享兼容库)、mysql-community-client(MySQL 客户端应用程序和工具)和 mysql-community-server(数据库服务器和相关工具)。

3. 登录 MySQL

(1)初始化 MySQL 的数据库

安装好 MySQL 后,我们需要初始化数据库,初始化和启动数据库时最好不要使用 root 用户,而是使用 mysql 用户启动。命令如下:

/usr/sbin/mysqld --initialize-insecure --user=mysql

(2)启动 MySQL 服务

使用如下命令开启 MySQL 服务,让其在后台运行:

/usr/sbin/mysqld --user=mysql &

说明:一定要加“&”,脚本才能放到后台运行。

(3)登录 MySQL

使用 root 用户无密码登录 MySQL:

mysql -uroot

(4)重置 MySQL 密码

在 5.7 版本后,我们可以使用 alter user...identified by 命令把 root 用户的密码修改为 “123456”,具体命令如下所示:

mysql> alter user 'root'@'localhost' identified by '123456';

修改完成,使用 exit 或者 quit 命令退出 MySQL,重新登录验证密码是否修改成功,具体命令如下所示:

mysql -uroot -p123456

4. 增加远程登录权限

当我们的帐号不允许从远程登录,只能在 localhost 连接时,这个时候只要在 MySQL 服务器上,更改 mysql 数据库里的 user 表里的 host 项,从 localhost 改成 % 即可实现用户远程登录。

(1)查看 user 表信息

使用如下命令查看 mysql 数据库下的 user 表信息:

mysql> use mysql;        # 切换成 mysql 数据库

mysql> select user,host from user;        # 查询用户信息

可以看到在 user 表中已创建的 root用户。host 字段表示登录的主机,其值可以用 IP 地址,也可用主机名。

(2)实现远程连接(授权法)

将 host 字段的值改为 % 就表示在任何客户端机器上能以 root 用户登录到 MySQL 服务器,建议在开发时设为 %。命令如下:

# 设置远程登录权限

mysql> update user set host='%' where host='localhost';

# 刷新配置信息

mysql> flush privileges;

查看任务解析

安装 MySQL 服务的详细步骤如下:

1. 解压安装包

现在已经为大家下载好了 MySQL 5.7.25 的安装包,存放在 /root/software 目录下。首先进入此目录下,然后进行解压即可使用,命令如下:

cd /root/software/                # 进入目录

tar -xvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar         # 解压安装包到当前目录下

将其解压到当前目录下,即 /root/software 中,效果图如下所示:

2. 安装 MySQL 组件

使用 rpm -ivh 命令依次安装以下组件:

(1)首先安装 mysql-community-common (服务器和客户端库的公共文件),使用命令:

rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm

若是出现“100%”,则表示安装成功:

(2)其次安装 mysql-community-libs(MySQL 数据库客户端应用程序的共享库),使用命令:

rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm

若是出现“100%”,则表示安装成功:

(3)之后安装 mysql-community-libs-compat(MySQL 之前版本的共享兼容库),使用命令:

rpm -ivh mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm

若是出现“100%”,则表示安装成功:

(4)之后安装 mysql-community-client(MySQL 客户端应用程序和工具),使用命令:

rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm

若是出现“100%”,则表示安装成功:

(5)最后安装 mysql-community-server(数据库服务器和相关工具),使用命令:

rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm

若是出现“100%”,则表示安装成功:

3. 登录 MySQL

(1)初始化 MySQL 的数据库

安装好 MySQL 后,我们需要初始化数据库,初始化和启动数据库时最好不要使用 root 用户,而是使用 mysql 用户启动。命令如下:

/usr/sbin/mysqld --initialize-insecure --user=mysql

对于 MySQL 5.7.6 以后的 5.7 系列版本,MySQL 也可以使用 mysqld --initialize 初始化数据库,该命令会在 /var/log/mysqld.log 文件中生成一个登录 MySQL 的随机密码,而 mysqld
--initialize-insecure
 命令不会生成随机密码,而是设置 MySQL 的密码为空。

(2)启动 MySQL 服务

使用如下命令开启 MySQL 服务,让其在后台运行:

/usr/sbin/mysqld --user=mysql &

说明:一定要加“&”,脚本才能放到后台运行。

执行后,系统会打印出命令执行的PID,如下图所示:

(3)登录 MySQL

使用 root 用户无密码登录 MySQL:

mysql -uroot

若是出现下图效果,说明登录成功:

(4)重置 MySQL 密码

在 5.7 版本后,我们可以使用 alter
user...identified by
 命令把 root 用户的密码修改为 “123456”,具体命令如下所示:

mysql> alter user 'root'@'localhost' identified by '123456';

效果如下图所示:

修改完成,使用 exit 或者 quit 命令退出 MySQL,重新登录验证密码是否修改成功,具体命令如下所示:

mysql -uroot -p123456

效果如下图所示:

4. 增加远程登录权限

当我们的帐号不允许从远程登录,只能在 localhost 连接时,这个时候只要在 MySQL 服务器上,更改 mysql 数据库里的 user 表里的 host 项,从 localhost 改成 % 即可实现用户远程登录。

(1)查看 user 表信息

使用如下命令查看 mysql 数据库下的 user 表信息:

mysql> use mysql;        # 切换成 mysql 数据库

mysql> select user,host from user;        # 查询用户信息

效果如下图所示:

可以看到在 user 表中已创建的 root 用户。host 字段表示登录的主机,其值可以用 IP 地址,也可用主机名。

(2)实现远程连接(授权法)

将 host 字段的值改为 % 就表示在任何客户端机器上能以 root 用户登录到 MySQL 服务器,建议在开发时设为 %。命令如下:

# 设置远程登录权限

mysql> update user set host='%' where host='localhost';

# 刷新配置信息

mysql> flush privileges;

效果图如下所示:

Hive 元数据配置到 MySQL 的详细步骤如下:

1. 驱动拷贝

将 /root/software 目录下的 MySQL 驱动包 mysql-connector-java-5.1.47-bin.jar 拷贝到 ${HIVE_HOME}/lib目录下。

cd /root/software/     # 进入目录
cp mysql-connector-java-5.1.47-bin.jar apache-hive-2.3.4-bin/lib/ # 拷贝MySQL驱动包

进入 ${HIVE_HOME}/lib 目录下进行验证:

2. 配置 Metastore 到 MySQL

(1)在 ${HIVE_HOME}/conf 目录下创建一个名为 hive-site.xml 的文件,并使用 vim 编辑器进行编辑:

touch hive-site.xml  # 创建文件
vim hive-site.xml    # 使用vim编辑器进行编辑

(2)根据官方文档配置参数(https://cwiki.apache.org/confluence/display/Hive/AdminManual+Metastore+Administration),拷贝数据到 hive-site.xml 文件中:

<configuration>  
<!--连接元数据库的链接信息 -->    
<property>  
<name>javax.jdo.option.ConnectionURL</name>  
<value>jdbc:mysql://???:???/hivedb?createDatabaseIfNotExist=true&amp;useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8</value>  
<description>JDBC connect string for a JDBC metastore</description>  
</property>  
<property>  
<!--连接数据库驱动 -->   
<name>javax.jdo.option.ConnectionDriverName</name>  
<value>com.mysql.jdbc.Driver</value>  
<description>Driver class name for a JDBC metastore</description>  
</property>  
<!--连接数据库用户名称 -->    
<property>  
<name>javax.jdo.option.ConnectionUserName</name>  
<value>???</value>  
<description>username to use against metastore database</description>  
</property>  
<!--连接数据库用户密码 -->   
<property>  
<name>javax.jdo.option.ConnectionPassword</name>  
<value>???</value>  
<description>password to use against metastore database</description>  
</property>  
</configuration>

3. 初始化元数据库

注意:如果使用的是 2.x 版本的 Hive,那么就必须手动初始化元数据库。 使用 schematool -dbType -initSchema 命令进行初始化:

schematool -dbType mysql -initSchema

若是出现“schemaTool completed”则初始化成功,如下图所示:

4. Hive 连接

在任意目录下使用 Hive 的三种连接方式之一:CLI 启动 Hive。由于已经在环境变量中配置了 HIVE_HOME ,所以这里直接在命令行执行如下命令即可:

hive  
或者  
hive --service cli

效果如下图所示:

可以使用如下命令退出 Hive 客户端:

hive> exit;
或者
hive> quit;

1. 创建数据库

进入hive客户端之后,创建数据库qingjiao。

查看任务解析

创建数据库:

create database qingjiao;

可以使用如下命令退出 Hive 客户端:

hive> exit;

或者

hive> quit;

hive完整搭建的更多相关文章

  1. Hadoop生态圈-Hive快速入门篇之Hive环境搭建

    Hadoop生态圈-Hive快速入门篇之Hive环境搭建 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数据仓库(理论性知识大多摘自百度百科) 1>.什么是数据仓库 数据 ...

  2. 《OD大数据实战》Hive环境搭建

    一.搭建hadoop环境 <OD大数据实战>hadoop伪分布式环境搭建 二.Hive环境搭建 1. 准备安装文件 下载地址: http://archive.cloudera.com/cd ...

  3. 《Programming Hive》读书笔记(一)Hadoop和hive环境搭建

    <Programming Hive>读书笔记(一)Hadoop和Hive环境搭建             先把主要的技术和工具学好,才干更高效地思考和工作.   Chapter 1.Int ...

  4. Hive环境搭建

    hive 环境搭建需要hadoop的环境.hadoop环境的搭建不在这里赘述.参考:http://www.cnblogs.com/parkin/p/6952370.html 1.准备阶段 hive 官 ...

  5. Hive篇--搭建Hive集群

    一.前述 Hive中搭建分为三中方式 a)内嵌Derby方式 b)Local方式 c)Remote方式 三种方式归根到底就是元数据的存储位置不一样. 二.具体实现 a)内嵌Derby方式 使用derb ...

  6. Spark环境搭建(四)-----------数据仓库Hive环境搭建

    Hive产生背景 1)MapReduce的编程不便,需通过Java语言等编写程序 2) HDFS上的文缺失Schema(在数据库中的表名列名等),方便开发者通过SQL的方式处理结构化的数据,而不需要J ...

  7. 无框架完整搭建安卓app及其服务端(一)

    技术背景: 我的一个项目做的的是图片处理,用 python 实现图片处理的核心功能后,想部署到安卓app中,但是对于一个对安卓和服务器都一知半解的小白来说要现学的东西太多了. 而实际上,我们的项目要求 ...

  8. 转载——Asp.Net MVC+EF+三层架构的完整搭建过程

    转载http://www.cnblogs.com/zzqvq/p/5816091.html Asp.Net MVC+EF+三层架构的完整搭建过程 架构图: 使用的数据库: 一张公司的员工信息表,测试数 ...

  9. Hive环境搭建和SparkSql整合

    一.搭建准备环境 在搭建Hive和SparkSql进行整合之前,首先需要搭建完成HDFS和Spark相关环境 这里使用Hive和Spark进行整合的目的主要是: 1.使用Hive对SparkSql中产 ...

随机推荐

  1. VirtualBox使用报错

    VirtualBox使用报错 1.启动报错:Failed to instantiate CLSID_VirtualBox... 报错内容: Failed to instantiate CLSID_Vi ...

  2. 2021年3月-第02阶段-前端基础-HTML+CSS阶段-Day03

    HTML5 第三天 一. 认识 3D 转换 3D 的特点 近大远小 物体和面遮挡不可见 三维坐标系 x 轴:水平向右 -- 注意:x 轴右边是正值,左边是负值 y 轴:垂直向下 -- 注意:y 轴下面 ...

  3. Java的源码执行(建议结合Javase语法学习来加深印象)

    一.源码执行时的先后顺序: 父类的静态属性和静态块(按照声明顺序) 本类的静态属性和静态块(按照声明顺序) main方法 父类的成员属性和成员块(按照声明顺序) 父类构造器 本类成员属性和块(按照声明 ...

  4. python基础练习题(题目 阶乘求和)

    day17 --------------------------------------------------------------- 实例025: 阶乘求和 题目 求1+2!+3!+-+20!的 ...

  5. 9.1 Linux存储结构和文件系统

    1. 存储结构 Linux系统中的一切文件都是从"根"目录(/)开始的,并按照文件系统层次标准(FHS)采用倒树状结构来存放文件,以及定义了常见目录的用途. 目录名称 应放置文件的 ...

  6. shiro550反序列学习

    Shiro550 shiro550和fastjson作为攻防演练的利器,前面学习了fastjson的相关利用和回显,本篇主要来学习一下shiro550的漏洞原理. 1.漏洞原因 在 Shiro < ...

  7. 轮播——swiper

    swiper组件 1.轮播数据是使用ajax进行填充的话,可能数目是0~n,在数目是1时,轮播会出现一些问题(出现空白侧),这时需作出判断(一张图片不滑动,多张就就行滑动),方法如下(以下方法中,si ...

  8. AspNetCore7.0源码解读之UseMiddleware

    Use​Middleware​Extensions 前言 本文编写时源码参考github仓库主分支. aspnetcore提供了Use方法供开发者自定义中间件,该方法接收一个委托对象,该委托接收一个R ...

  9. 安卓导航抽屉 Navigation Drawer 实现沉浸通知栏

    在使用 Navigation Drawer Activity 模版的时候,遇到了通知栏无法完全沉浸的问题,尝试搜索一些现有的解决方法,但是或多或少都会存在一些问题,通过反复尝试找到找到了一种比较靠谱的 ...

  10. Web Api源码(路由注册)

    这篇文章只是我学习Web API框架的输出,学习方法还是输出倒逼输入比较行得通,所以不管写的好不好,坚持下去,肯定有收获.篇幅比较长,仔细思考阅读下来大约需要几分钟. 做.NET开发有好几年时间了,从 ...