HDP2.4安装图文详细教程(3)

在安装Ambari时,Ambari默认的数据库是ProstgreSQL,对ProstgreSQL不太熟悉,选择使用MySql。 但CentOS 7 默认支持的是MariaDB数据库. MariaDB是MySQL的一个分支,主要由开源社区在维护。安装过程中先将Centos7默认安装的MariaDB数据库删除,再重新安装MySql.

安装步骤:

软件下载  (mysql的rpm包有很多文件,只需要安装Server 和 Client)

数据库安装

用户权限配置

安装目录及功能

常用创建用户方法

客户端查询工具  (mysql-workbench-community-6.3.7-winx64.msi

软件安装包:

MySQL-client-advanced-5.6.22-1.el7.x86_64.rpm

MySQL-server-advanced-5.6.22-1.el7.x86_64.rpm

数据库安装:

 删除Centos默认安装的MariaDB

命令:rpm -qa|grep mariadb  (查mariadb安装包)

命令:rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64  (mariadb-libs-5.5.44-2.el7.centos.x86_64是上一条命令查出结果)

将MySql的安装包文件上传至linux的某个目录下并在命令行中切换至该目录, 如下图

HDP2.4安装图文详细教程

命令: yum install -y perl-Module-Install.noarch  (解决mysql server 安装时异常)

命令:rpm -ivh MySQL-server-advanced-5.6.22-1.el7.x86_64.rpm    ( 安装mysqlServer)

HDP2.4安装图文详细教程

命令:rpm -ivh MySQL-client-advanced-5.6.22-1.el7.x86_64.rpm (安装mysqlclient)

命令:service mysql start  (启动mysql 提示 sucess 则,ok)

若服务启动时 Starting MySQL. ERROR! The server quit without updating PID file (/var/lib/mysql/hdp1.pid),按下面步骤操作。

命令:rm -rf /usr/my.cnf (删除后重启 reboot, 重新执行上面启动服务命令,提示sucess,则ok)

命令:service mysql stop   (因为默认root没有密码,你进不去)

用户权限配置:

mysql_secure_installation:是用来提高mysql库的安全设置的命令,包括为root用户设置密码,删除匿名账号, 取消root用户远程登录权限,删除test库和对test库的访问权限,刷新授权表使修改生效等操作

查相关资料,可执行:/usr/lib/mysql_secure_installation 来设置root密码,在实际安装的过程中,mysql给root生成了一个随机的加密密码,在执行mysql_secure_installation时,第一步就过不去. (待研究

上一步走不通,使用mysqld_safe命令,绕过密码登陆,必须先将mysql服务停掉

命令:mysqld_safe --user=mysql --skip-grant-tables --skip-networking & mysql -u root mysql  (启动mysql,避开密码登陆)

        我在这里遇到了问题 Error 2002,如下图,切换到 /var/lib/mysql 目录下,可以看到mysql.sock 和 hdp1.pid 文件,说明mysql已经启动

HDP2.4安装图文详细教程

命令:mysql --socket=/var/lib/mysql/mysql.sock    (如果没有上面的错误,则省掉这步)

进入mysql 客户端的操作命令行

执行Sql: use mysql;  (切换至mysql 数据库)

执行Sql: UPDATE user SET Password=PASSWORD('123456a?') where USER='root'; (更新root用户密码,PASSWORD为加密函数)如图:

HDP2.4安装图文详细教程

执行: flush  privileges;  (刷新权限)

输入: quit;  (退出mysql 客户端, 返回至linux命令行)

命令: service mysql restart   (重启mysql服务)

命令: mysql -u root -p   (以root用户登陆mysql客户端,接下来会提示你输入密码,此时屏幕不可见,不要以为死机)

进入mysql 客户端命令行,随便执行一条sql, 如: show databases;

返回:ERROR 1820 (HY000): You must SET PASSWORD before executing this statement    (这也就是常用的第一次登陆需要修改密码)

执行Sql: SET PASSWORD = PASSWORD('123456a?');

验证Sql: show databases;  (显示结果则OK)

执行: quit; 

命令: service mysql restart  (重启mysql服务)

命令: mysql -u root -p    (进行mysql 命令行)

执行:  GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456a?' WITH GRANT OPTION;  (允许所有IP远程访问mysql)

执行:  flush  privileges;  (刷新权限)

执行:quit; 

命令:service mysql restart  (重启mysql服务,mysql安装完成)

安装目录及功能:

mysql安装完成后,文件分布在以下几个目录:

/var/lib/mysql  数据库文件,目录下的 ibdata1 用于存放数据,索引等,是MYSQL的最主要的数据。ib_filelog是数据库日志文件,采用二进制存储。

/usr/share/mysql  命令及配置文件目录

/usr/bin  mysqladmin、mysqldump 等命令

在linux命令行下,可使用  whereis mysql  命令查看其安装目录,如图:

常见用户创建方法:

mysql账号由用户名+主机组成,可以出现重复的用户名,跟其他的数据库不一样。

主机名可以用机器名或IP地址,也可以用通配符%

mysql创建用户的方法分成三种:CREATE USER的方法、GRANT的方法、INSERT USER表的方法

Create User脚本: CREATE USER 'username@host' [IDENTIFIED BY 'PASSWORD'] 其中密码是可选项;

                示例:  CREATE USER 'john'@'192.168.189.71' IDENTIFIED BY "123";

Grant脚本:GRANT <ALL|priv1,priv2,.....privn> ON [object] To [User] [IDENTIFIED BY 'password'] [WITH GRANT OPTION];

                <privn>:代表权限mysqlr定义的14个权限

                [object] :数据库名.表名

                [User]: userName@host

                [WITH GRANT OPTION]:赋User拥有给其它用户授权的权限

      示例:grant select,insert,update,delete,create,drop on test.hr to john@192.168.10.1 identified by '123';

      注意:当user用户存在时,grant会对用户进行授权,但当数据库中不存在该用户时,会创建相应的用户并授权。

Insert User: 直接向mysql.user表插入记录

客户端查询分析工具:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/cb5b33dadbba436b0c8f0090d5744ba5.html