1、停止MySQL服务
# service mysqld stop
2、查看系统中是否已安装MySQL服务
# rpm -qa | grep mysql 或 yum list installed | grep mysql
3、卸载旧版MySQL
# yum remove mysql mysql-*
4、 移除命令执行后,可再看看是否有残余的mysql
5、 列出资源库中特定的可以安装或更新以及已经安装的rpm包
(这里使用的系统是cento6.5,其中的mysql包的版本为5.1.73-8.el6_8)
# yum list mysql // 列出名为mysql的包
6、 下载安装最新的rpm文件
这里使用的版本是mysql57-community-release-el6-7.noarch.rpm
如果提前得到了这个文件,这里可以使用yum localinstall mysql57-community-release-el6-7.noarch.rpm从本地安装)
# rpm -Uvh http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm
7、 再一次查看资源库中mysql相关的包
# yum list mysql* // 列出以mysql 开头的包
这里可以看到多了下面的信息:
mysql-community-bench.x86_64 5.6.36-2.el6 mysql56-community
mysql-community-client.i686 5.6.36-2.el6 mysql56-community
mysql-community-common.i686 5.6.36-2.el6 mysql56-community
mysql-community-devel.i686 5.6.36-2.el6 mysql56-community
mysql-community-devel.x86_64 5.6.36-2.el6 mysql56-community
mysql-community-embedded.i686 5.6.36-2.el6 mysql56-community
mysql-community-embedded.x86_64 5.6.36-2.el6 mysql56-community
mysql-community-embedded-devel.i686 5.6.36-2.el6 mysql56-community
mysql-community-embedded-devel.x86_64 5.6.36-2.el6 mysql56-community
mysql-community-libs.i686 5.6.36-2.el6 mysql56-community
mysql-community-libs-compat.i686 5.6.36-2.el6 mysql56-community
mysql-community-libs-compat.x86_64 5.6.36-2.el6 mysql56-community
mysql-community-test.x86_64 5.6.36-2.el6 mysql56-community
......
8、安装MySQL(过程中问询是否yes,一路y下去)
# yum install mysql-community-server
注意:
# yum install mysql //如果只是安装mysql的话,会出以下结果
# service mysqld start
# mysqld: unrecognized service //报错,这是因为没有安装mysql-server
# yum install mysql-server //安装上即可解决问题
9、 安装完成后,输入命令查看MySQL版本号
mysql -V
10、安装完毕后,在 /var/log/mysqld.log 文件中会自动生成一个随机的密码
我们需要先取得这个随机密码,以用于登录 MySQL 服务端:
grep "password" /var/log/mysqld.log
打印如下内容:
A temporary password is generated for root@localhost: hilX0U!9i3_6
//如果找不到,可先跳过这一步
我们复制 root@localhost: 后面的随机字符串,这个字符串就是 MySQL 在安装完成后为我们随机生成的密码;
11、启动MySQL
service mysqld start
第一次启动比较慢,因为它会自己做初始化,耐心等待即可。
如果启动失败,提示“MySQL Daemon failed to start”,可以尝试先初始化mysql,输入命令:mysqld --initialize。
如果初始化提示:
2015-12-22T07:49:45.386095Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2015-12-22T07:49:45.388125Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
2015-12-22T07:49:45.388153Z 0 [ERROR] Aborting
说明数据文件夹已被创建,直接删除,让mysql自己创建即可。
输入命令:
# rm -rf /var/lib/mysql
删除后,注意:然后不需要再初始化了,直接启动mysql,它会自己初始化。
输入命令:
# service mysqld start
11、登录到 MySQL 服务端
进入mysql后,第一件事件就是要你改默认密码。
默认密码见第10步,如果没有找到密码,那么默认为空
mysql -u root -p [password]
打印出 MySQL 的版本即表明已登录;
设置用户 root 可以在任意 IP 下被访问:
grant all privileges on *.* to root@"%" identified by "新密码";
设置用户 root 可以在本地被访问:
grant all privileges on *.* to root@"localhost" identified by "新密码";
刷新权限使之生效:
flush privileges;
12、更新 MySQL 的用户密码(在mysql命令行下)
set password = password('new_password');
注意:由于 MySQL5.7 采用了密码强度验证插件 validate_password,故此我们需要设置一个有一定强度的密码;
输入 exit 后用新密码再次登录看看吧!
13、设置mysql为开机启动
# chkconfig --list // 显示服务列表
如果看到mysqld的服务,并且3,4,5都是on的话则成功,如果是off,则键入
# chkconfig --level 345 mysqld on
# reboot //重启电脑
# netstat -na | grep 3306 //如果看到有监听说明服务启动了。也可以用:
或
#service mysqld status //查看mysql状态
注:mysql中每个命令后都要以分号;结尾