标签:mysql 版本升级
阿里云的centos6.3 64位操作系统,默认mysql版本是5.5 ,开发人员需要用到5.7版本,因此进行升级操作:
wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.11-1.el6.x86_64.rpm-bundle.tar
下载完成后,解压
mysqldump -uxxx -pxx databasename > databasename.sql
service mysqld stop
yum remove mysql*
find / -name mysql ps -ef | grep -i mysql rm -rf mysql**** kill -9 mysqlid
注意/usr/bin、/usr/share/、/var/lib下有很多mysql开头的文件,都删除掉,还有删除/etc目录下的my.cnf文件
rpm -qa | grep -i name rpm -e mysqlxxxxx
yum localinstall mysql-community-common-5.7.11-1.el6.x86_64.rpm mysql-community-client-5.7.11-1.el6.x86_64.rpm mysql-community-server-5.7.11-1.el6.x86_64.rpm mysql-community-libs-5.7.11-1.el6.x86_64.rpm mysql-community-devel-5.7.11-1.el6.x86_64.rpm
mysql error 1524
error 1045(28000)
error 1820
使用mysql -uroot -proot登录不了
对应的方法为:
在my.cnf文件中的[mysql]下增加“skip-grant-tables”,然后重新启动mysql服务
在my.cnf文件中的[mysql]下将“user=mysql”注释掉
该问题需要设置一下用户的密码
mysql> create database ttt; ERROR 1820 (HY000): You must SET PASSWORD before executing this statement mysql> set password = password("root"); Query OK, 0 rows affected (0.00 sec)
mysql给你初始化了密码,在root目录下找.mysql_secret文件,注意文件隐藏形式,直接通过vim .mysql_secret就会关联到
在我这里很奇怪,没有.mysql_secret 文件,因此只有使用下面的方法:
先停止mysql服务:
service mysqld stop
使用--skip-grant-tables忽略密码启动:
mysqld_safe --skip-grant-tables &
更改密码: update mysql.user set authentication_string=password(‘mysql‘) where user=‘root‘ and Host = ‘localhost‘;
flush privileges;
*特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了
而是将加密后的用户密码存储于authentication_string字段
杀死mysqld: killall -TERM mysqld
启动mysqld服务: service mysqld start
进入mysql,5.7版本在首次登录的时候它还是要求修改密码,因此执行下面的命令:
ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘Mysql_123‘;
flush privileges;
注意,更改后的密码也有复杂度要求,应该是需要字母、数字、符号的组合,并且是8位以上。
本文出自 “yuweibing的技术博客” 博客,请务必保留此出处http://yuweibing.blog.51cto.com/3879355/1761351
标签:mysql 版本升级
原文地址:http://yuweibing.blog.51cto.com/3879355/1761351