在Linux下部署网站(java环境部署)第七章 安装MySQL(可选)

1.去MySQL官网下载安装包

https://www.mysql.com/

232103_6pBt_3187968.png

企业版本是收费的,我们下载免费的社区版本。

232120_wlAf_3187968.png

下载服务器版本:

232136_WRjE_3187968.png

选择平台为红帽的Linux,别选错。

232159_Y8fT_3187968.png

我们用的是RHEL6,所以要选择相对应的版本。根据你的系统选择32位还是64位版本。注意一定要选择适配的版本,不要在64位平台上装32位版本。另外,要看清楚你的操作系统是哪个版本(RHEL5?6?7?),这个很关键。因为这三个版本的操作系统改动幅度很大,为防止麻烦,还是要选择适配版本,别串用。

232223_QCCQ_3187968.png

这时我们需要注册一个Oracle账号(别嫌麻烦,下载Oracle也用得着),然后登陆下载即可。

也可以在下面直接下载。

232244_n58w_3187968.png

2.FTP传送安装包到服务器

232334_sL3x_3187968.png

3.解压缩安装包

cd /var/ftp/pub

tar -xvf mysql-5.7.13-1.el6.x86_64.rpm-bundle.tar  #换成你的版本号

232353_zEba_3187968.png

解压得到9个包:

232409_mipK_3187968.png

安装之前我们需要检查mysql是否已安装,grep的-i选项表示匹配时忽略大小写:

rpm -qa|grep -i mysql

如果看到:mysql-libs-5.1.61-4.el6.x86_64这个包,说明已经安装了库文件,应该先卸载,不然会出现覆盖错误。注意卸载时使用了--nodeps选项,忽略了依赖关系:

rpm -e mysql-libs-5.1.61-4.el6.x86_64 --nodeps  #换成你的版本号

使用命令依次安装(必须按照这个顺序):

rpm -ivh mysql-community-common-5.7.13-1.el6.x86_64.rpm --force --nodeps

rpm -ivh mysql-community-libs-5.7.13-1.el6.x86_64.rpm

rpm -ivh mysql-community-client-5.7.13-1.el6.x86_64.rpm --force

rpm -ivh mysql-community-libs-compat-5.7.13-1.el6.x86_64.rpm --force

rpm -ivh mysql-community-embedded-5.7.13-1.el6.x86_64.rpm

rpm -ivh mysql-community-devel-5.7.13-1.el6.x86_64.rpm --force

rpm -ivh mysql-community-embedded-devel-5.7.13-1.el6.x86_64.rpm

rpm -ivh mysql-community-server-5.7.13-1.el6.x86_64.rpm  --force

rpm -ivh mysql-community-test-5.7.13-1.el6.x86_64.rpm  --force

4.初始化mysql并设置root密码

此时尝试用root登陆,密码错误!据官方文档的解释,这时因为从MySQL5.7.4起,以RPM包的方式安装后的MySQL的部署默认是安全的,并且有这些特点:

在大多数情况下,你只需要安装MySQL-server和MySQL-client安装包就可以安装上一个标准功能的MySQL。对于一个标准安装来说,其他的安装包不是必需的。

MySQL的安装程序会创建一个单独的root账户:'root'@'localhost',并自动为这个账户生成一个初始的随机密码,并将此密码标志为已过期。(注意,root的密码是安装程序随机生成的的而不是空)

那么密码从哪里找呢?官方文档说:对于MySQL5.7.6和更高的版本来说,初始的随机root密码是被写入错误日志的。对于MySQL5.7.4和5.7.5版本来说,密码是被写入以HOME环境变量命名的目录中的.mysql_secret文件中的。根据操作系统,可以使用诸如sudo这样的命令让HOME环境变量的值指向root系统用户的home目录。.mysql_secret文件是以只允许创建它的系统用户访问的600模式而创建的。(版本差异的产生,是因为自5.7.6版本起数据目录和root账户由mysqld --initialize来初始化,5.7.6以前的版本由mysql_install_db来初始化)。

不创建MySQL匿名账户。

不创建测试数据库。

作为上述操作所产生的结果,在安装完成后你需要去启动服务,以root身份,用初始的随机密码来进行连接,并且在连接后选择一个新的密码。在完成这些操作之前,root用户无法做其他的任何事情。修改密码,你可以用ALTER USER语句(例如,通过mysql客户端)。重设密码后,如果有创建.mysql_secret文件就把它删除;否则,在你执行mysql_secure_installation这条命令的时候,可能会再次看到那个文件和过期的root密码成为确认安全部署的一部分。

初始化的操作我们要在/usr/bin目录中进行,所以我们先进入/usr/bin目录:

cd /usr/bin

然后,我是以root身份登录Linux系统的,并且我想为root账户生成一个随机的初始密码,所以我要执行命令:

mysqld --initialize --user=mysql --explicit_defaults_for_timestamp

232443_3knD_3187968.png

mysqld服务会检查数据目录是否存在,如果数据目录不存在,mysqld则会创建它。如果数据目录存在,且不是空目录(即包含有文件或子目录),mysqld会显示一条错误信息并中止:

[ERROR] --initialize specified but the data directory exists. Aborting.

遇到这种情况,就将数据目录删除或重命名后,重新再试一次。

简单的说,就是在初始化之前,先检查一下数据目录是否存在,执行命令:

ls  -l  /var/lib|grep mysql

232458_hlm8_3187968.png

若有,则执行命令将其删除:

rm  -rf  /var/lib/mysql

再次尝试之前的命令就可以了:

232515_T6ui_3187968.png

这样就完成了对MySQL的初始化,并为root账户生成了一个随机的初始密码。

下面我们来看下root账户的随机初始密码,执行命令:

sudo grep 'temporary password' /var/log/mysqld.log

下图红线框中的字符就是密码,把它记下来,登录MySQL的时候要用:

232539_FNwk_3187968.png

MySQL服务器安装之后虽然配置了相关文件,但并没有自动启动mysqld服务,需自行启动:

service mysqld start

232558_RLnG_3187968.png

可通过检查端口是否开启来查看MySQL是否正常启动:

netstat -anp|grep 3306

232616_dwZU_3187968.png

我们来看下mysqld是否已经启动了,执行命令:

service mysqld status

如果看到的和下图一样,就说明已经启动了:

232631_QBHG_3187968.png

准备工作全部就绪,来吧,登录吧!执行命令:

mysql  -u  root  -p

要注意输入密码是不显示的,不是你的键盘有问题,而是Linux的一种安全机制,只管输入就行。

232651_5Wh3_3187968.png

费尽周折总算是登了进来,可是每次输入这样一个密码真的是一件很恶心的事。所以要尽快趁这个机会把root密码改掉,改成我们方便记忆的密码。

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

有一点需要注意,MySQL对用户密码安全性有所加强,所以设置的密码必须包含有数字,大写字母,小写字母,特殊符号,如果你设置的密码过于简单,会提示:

ERROR 1819 (HY000): Your password does NOT satisfy the CURRENT policy requirements。

232713_jqGL_3187968.png

尝试用新密码登录没有问题,至此,安装mysql的工作就告一段落了!

6.配置MySQL的远程登录

默认MySQL只允许本地连接,如果尝试用Navicat远程连接会收到如下错误提示:

232732_bhCg_3187968.png

如果想打开远程连接,需要在putty中登录MySQL,然后执行以下SQL语句:

mysql -u root -p

use mysql;

update user set host = '%' where user = 'root';

select host, user from user;

FLUSH PRIVILEGES;

 

232757_iA9w_3187968.png

 

此时就可以用navicat登陆了!

232812_tm8G_3187968.png

 

 

 

 

转载于:https://my.oschina.net/u/3187968/blog/824025

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值