第一步:
下载rpm包 mysql官网下载:
http://dev.mysql.com/downloads/mysql/
但如果你的下载网速不好的话也可以点下面的链接下载自己想要的版本
http://mirrors.sohu.com/mysql/MySQL-5.7/ 我用的是(CentOs7.1)下载的是tar包文件
mysql-5.7.16-1.el6.x86_64.rpm-bundle.tar
第二步:具体安装步骤如下:
1. 检查系统自带的MySQL及相关RPM包,是否安装 rpm -qa | grep -i mysql 如果有安装,则移除(rpm –e 名称) yum -y remove mysql
2. 创建用户和组(如果已经创建则跳过) groupadd mysql useradd -r -g mysql mysql
3. 解压tar文件,并安装 进入文件目录 运行:tar -xf mysql-5.7.16-1.el6.x86_64.rpm-bundle.tar 解压完成,然后依次执行。
rpm -ivh mysql-community-common-5.7.16-1.el6.x86_64.
rpm rpm -ivh mysql-community-libs-5.7.16-1.el6.x86_64.
rpm rpm -ivh mysql-community-client-5.7.16-1.el6.x86_64.
rpm rpm -ivh mysql-community-server-5.7.16-1.el6.x86_64.rpm
到此,mysql已经安装完成。
4. 基础配置
执行:service mysqld start 出现下图表示安装成功
关闭mysql服务:service mysqld stop
初始化(这里是以root身份执行的):bin/mysqld --initialize --user=mysql
注:使用–initialize会为root账户生成一个随机的初始密码,我们可以使用命令:mysql -u root -p,然后输入密码来登录MySQL。使用–initialize-insecure不会为root账户生成一个随机的初始密码,我们可以使用命令:mysql -u root –skip-password直接登录MySQL,这里我是用的第一种。
下面我们来看下root账户的随机初始密码,查看root用户临时登录密码:
grep -an "temporary password" /var/log/mysqld.log
启动mysql服务 :
service mysqld start
登录:mysql -u root -p 并输入密码 但是我就是在这里遇到了问题,输入密码后提示 :Access denied for user ‘root’@’localhost’ (using password: YES) 。
百度了下,回答有很多 ,试了一下,过程如下:
首先关闭MySQL服务 :service mysqld stop 用mysqld_safe重启服务,
安全模式执行:mysqld_safe --user=root --skip-grant-tables --skip-networking &
如果提示mysqld_safe A mysqld process already exists
执行ps -A|grep mysql显示当前进程,然后执行 kill -9 xxxx xxxx填上一步你查出的进程序号,然后执行就没问题了。
登录mysql -u root -p 输入密码
修改root用户名密码执行
update user set password=PASSWORD('12345') where user='root';
我试了但是提示没有password这个字段,百度了下原来5.7版本后的 password 字段变成了authentication_string,一次执行
update user set authentication_string=PASSWORD('12345') where user='root';
flush privileges;
quit ;
再次登录 OK 然后我想让root在其他主机上也能链接到此数据库执行 :
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
提示重置密码 You must reset your password ,意思是让我先重设一下密码(what the xxxx)。
密码重置,先关闭mysql 服务依次执行:
service mysqld stop
mysqld_safe --user=root --skip-networking &
mysql -u root -p SET PASSWORD = PASSWORD('new password');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges;
quit;
注:新密码不能太简单,不然会提示密码过于简单,最好包含大小写字母,数字,特殊字符至少8个字符。
一切OK 执行 :
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
重启mysql服务:service mysqld restart