http://dev.mysql.com/downloads/mysql/
rpm -qa | grep mysql
如果已经安装了,将其卸载,如:
rpm -e --nodeps mysql-libs-5.1.71-1.el6.i686
1、mkdir /usr/local/src/mysql
2、cd /usr/local/src/mysql
解压:tar -xvf mysql-5.7.17-1.el6.x86_64.rpm-bundle.tar
安装前,先讲一下,虽然官方文档说安装mysql-community-client-5.7.9-1.el7.x86_64.rpm和mysql-community-server-5.7.9-1.el7.x86_64.rpm就可以获得标准功能的MySQL。但是由于RPM包的依赖关系,所以实际上我们还要多装2个RPM包:mysql-community-common-5.7.9-1.el7.x86_64.rpm和mysql-community-libs-5.7.9-1.el7.x86_64.rpm。
依次执行命令:
rpm -ivh mysql-community-common-5.7.17-1.el6.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.17-1.el6.x86_64.rpm
rpm -ivh mysql-community-client-5.7.17-1.el6.x86_64.rpm
rpm -ivh mysql-community-server-5.7.17-1.el6.x86_64
注意:是依次执行,不要乱了顺序,因为它们之间有依赖关系。看下面2张图:
执行:rpm -ivh mysql-community-server-5.7.17-1.el6.x86_64 提示错误信息
从以上错误信息可以看出是因为缺少库libaio、numactl,所以需要安装libaio,numactl
统一放在/usr/local/src/mysql目录下面,如下图:
下载地址:http://mirror.centos.org/centos/6/os/x86_64/Packages/libaio-0.3.107-10.el6.x86_64.rpm
安装:rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm
rpm -ivh mysql-community-server-5.7.17-1.el6.x86_64.rpm
安装成功!
1、启动mysql服务
service mysql start
service mysql start出错,mysql启动不了,解决mysql: unrecognized service错误的方法如下:
service mysql start出错,mysql启动不了,解决mysql: unrecognized service错误的方法如下:
[[email protected] ~]# service mysql start
mysql: unrecognized service
[[email protected] ~]# rpm -q mysql 查询发现mysql已经正常安装
mysql-5.1.52-jason.1
[[email protected] ~]# /etc/rc.d/init.d/mysqld start 直接启动没问题
Starting mysqld: [ OK ]
在启动时,会提示root随机密码 。
使用root账号登录mysql
提示:
随机生成的root密码:O>XesyEoI9/!
1、注意:这个密码是不安全的,所有需要修改初始密码。
2、使用密码登录mysql账号:mysql-uroot -p
修改root密码
1、update修改password应该是hash值的
MySQL>update user set password=password(‘123456’) where user=’root’;
2、set修改mysql的Hash密码
MySQL>SET PASSWORD FOR ‘root′@’localhost’ = PASSWORD('123456’);
3、用mysqladmin命令修改密码
Shell> mysqladmin -uroot -poldpassword password 123456;
4、用grant修改或create user时设置密码
MySQL>grant all privileges on db01.* to user01@”localhost” Identified by “newpassword”;
MySQL>CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'newpass';