在linux中安装mysql,配置hive
MySQL安装和hive的配置
1.准备好mysql安装包
2. 确认虚拟机之前有没有有安装过mysql
执行:rpm -qa 查看linux安装过的所有rpm包
执行:rpm -qa | grep MySQL
如果已经安装了mysql,需要删除一下
3. 删除mysql
执行: rpm -ev --nodeps mariadb-libs-5.5.56-2.el7.x86_64
此时,再执行:rpm -qa | grep mysql 确认没有相关信息再安装
新创建一个命令窗口,将压缩包拖入窗口内
安装rpm -ivh perl-Data-Dumper-2.145-3.el7.x86_64.rpm
将mysql安装到linux中
4. 新增mysql用户组,并创建mysql用户
groupadd mysql
useradd -r -g mysql mysql
查看有什么cat /etc/passwd
5. 安装mysql server rpm包和client包,执行:
rpm -ivh MySQL-server-5.6.29-1.linux_glibc2.5.x86_64.rpm
rpm -ivh MySQL-client-5.6.29-1.linux_glibc2.5.x86_64.rpm
6.查看路径
7.修改my.cnf,默认在/usr/my.cnf,执行:vim /usr/my.cnf,添加如下内容:
[client]default-character-set=utf8[mysql]default-character-set=utf8[mysqld]character_set_server=utf8binlog_format=mixed
8. 将mysqld加入系统服务,并随机启动
cp /usr/share/mysql/mysql.server /etc/init.d/mysqld
注意:/etc/init.d 是linux的一个特殊目录,放在这目录的命令会随linux开机启动。
9.启动mysqld,执行:service mysqld start
10.查看初始生成的密码,执行:cat /root/.mysql_secret 。这个密码随机生成
11. 修改初始密码
第一次安装完mysql后,需要指定登录密码
执行:mysqladmin -u root -p password root 此时,提示要输入初始生成的密码,拷贝过来即可
12. 进入mysql数据库
执行:mysql -u root -p
输入:root进入
执行:\s查看mysql数据配置信息
配置hive
切换到software目录
1.将mysql驱动包上传到hive安装目录的lib目录下
mv mysql-connector-java-5.1.38.jar hive-1.2.0/lib/
2.进入conf目录下,编辑新的配置文件,名字为:hive-site.xml
注意:虚拟机名称要和你自己的匹配,不然会报错
<configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://hadoop01:3306/hive?createDatabaseIfNotExist=true</value> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>root</value> </property></configuration>
3. 配置相关信息:
4.进入到mysql数据库,进行权限分配
mysql -u root -p
执行:grant all privileges on . to ‘root’@‘hadoop01’ identified by ‘root’ with grant option;
执行:grant all on . to ‘root’@‘%’ identified by ‘root’;
执行:flush privileges;
5.进入mysql数据库,执行:create database hive character set latin1;
6.启动hive客户端
以上步骤都做完后,再次进入mysql的hive数据,发现有如下的表:
进入hive ,进入bin目录,执行:sh hive
如果出现:Access denied for user ‘root’@‘hadoop01’ (using password: YES)这个错误,指的是当前用户操作mysql数据库的权限不够
7.可以通过navicat来连接数据库