首先说明:老版本数据库没有数据,所以无数据备份过程。如果你在升级数据库过程里,需要备份数据,请另外自行处理。

1、下载最新版MySQL、解压待用

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz #下载tar -zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz #解压cp -r mysql-5.7.18-linux-glibc2.5-x86_64 /usr/local/mysql #复制到安装目录

2、添加用户

#添加用户组
groupadd mysql
#添加用户mysql 到用户组mysql
useradd -g mysql mysql

3、创建数据文件存放目录(没有放在MySQL默认的目录)

mkdir /datas
mkdir /datas/mysql
chown -R mysql.mysql /datas/mysql
chmod 777 /datas/mysql

4、卸载老版本(这里可能会遇到各种问题)

rpm -qa|grep -i mysql #查找已有的包,当时我有2个(php-mysql-5.4.16-42.el7.x86_64、perl-DBD-MySQL-4.023-5.el7.x86_64)rpm -ev php-mysql-5.4.16-42.el7.x86_64 #删除其中一个,正常,然后另外一个删不掉,有依赖安装包yum -y remove perl-DBD-MySQL #这样才终于卸载掉

具体这个步骤,参考这里,感谢原作者:

http://www.cnblogs.com/kerrycode/p/4364465.html

http://blog.csdn.net/tjcyjd/article/details/52189182

http://www.jb51.net/os/RedHat/80289.html

5、安装新的MySQL,当前用户在 /var/local/mysql/ 目录下:

./bin/mysqld --initialize --user=mysql --datadir=/datas/mysql #安装./support-files/mysql.server start #启动服务

这里有可能无法启动,问题:mysqld_safe error不能创建错误日志文件cd /var/log/mariadb/vi mariadb.log #新建一个文件chown mysql.mysql mariadb.logchmod 777 mariadb.log再启动就ok了 参考,感谢原作者:http://tieba.baidu.com/p/5103002724

ps aux | grep mysql #查看一下进程/usr/local/mysql/bin/mysql -V #查看版本,是不是正确的,或者登陆后用命名查看: SELECT VERSION();

6、安装正常后,就是初始配置了。包括:修改root密码、修改端口、允许用户远程登陆

不过安装过程,要注意,有个初始密码【(YngqRv7m).e】(每次每个人都不同,先记着,一会儿登陆的时候用):

2017-06-29T02:20:02.092807Z 1 [Note] A temporary password is generated for root@localhost: (YngqRv7m).e

端口:

vi /etc/my.cnf #编辑配置文件

修改如下:

[mysqld]
datadir=/datas/mysql
port=33316

[client]
port=33316

修改root用户:

登陆mysql:

/usr/local/mysql/bin/mysql -uroot -p

如果报错 Can’t connect to local MySQL server through socket

应该是“/etc/my.cnf”配置文件的问题了。解决办法是修改“/etc/my.cnf”配置文件,在配置文件中添加“[client]”选项和“[mysql]”选项,并使用这两个选项下的“socket”参数值,与“[mysqld]”选项下的“socket”参数值,指向的socket文件路径完全一致。如下,继续修改my.cnf。参考,感谢作者: http://www.aiezu.com/db/mysql_cant_connect_through_socket.html

[mysqld]
datadir=/datas/mysql
socket=/var/lib/mysql/mysql.sock
port=33316 [client]
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
port=33316[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

然后登陆进去,修改root

/usr/local/mysql/bin/mysql -uroot -p #然后输入上面记下的密码 (YngqRv7m).e

操作可能会报错:

mac mysql error You must reset your password using ALTER USER statement before executing this statement.
安装完mysql 之后,登陆以后,不管运行任何命令,总是提示这个。那么:

SET PASSWORD = PASSWORD('your new password');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges;

完成以上三步退出再登,使用新设置的密码就行了。参考,感谢作者:http://www.cnblogs.com/debmzhang/p/5013540.html

然后是设置允许远程登录:

需要手动增加可以远程访问数据库的用户。

方法一、本地登入mysql,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,将"localhost"改为"%"

mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;

方法二、直接授权(推荐)

  从任何主机上使用root用户,密码:youpassword(你的root密码)连接到mysql服务器:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES 

我用方法一不行,继续方法二才好。没测试是不是方法执行了还需要重启mysql,按道理应该不用。

参考,感谢作者:http://www.cnblogs.com/hyzhou/archive/2011/12/06/2278236.html

另外,添加用户,或者修改其他用户的密码,直接参考:http://blog.csdn.net/adu198888/article/details/54092857

#给用户test赋予所有库和表的部分权限(所以权限是: all privileges)
grant select,delete,update,create,drop on *.* to test@"%" identified by "1234";

#修改用户密码
update mysql.user set authentication_string=password('密码') where User='test' and Host='localhost';
flush privileges;

另外附:

有时候mysql报错:Got a packet bigger than 'max_allowed_packet' bytes

然后命令查看和配置文件里查看的max_allowed_packet结果不一样(命令查询是1024):

show VARIABLES like '%max_allowed_packet%';    #结果为1024

那就考虑是因为服务器的内存太小,被MySQL重置为1024了。

解决办法是:1、重启MySQL,就好了;2、根本解决办法是服务器加内存。

 

转载于:https://www.cnblogs.com/whatmiss/p/7093630.html

cenos下安装MySQL最新版(5.7.18)记录。附卸载老版本过程相关推荐

  1. mac笔记本安装mysql_mac下安装MySQL完整步骤(图文详情)

    原文摘自:http://www.jb51.net/article/103841.htm 最近使用Mac系统,准备搭建一套本地web服务器环境.因为Mac系统自带PHP和apach,但是没有自带mysq ...

  2. Centos下安装mysql 总结

    一.MySQL安装 Centos下安装mysql 请点开:http://www.centoscn.com/CentosServer/sql/2013/0817/1285.html 二.MySQL的几个 ...

  3. 在FreeBSD下安装mysql+apache+php

    转自:[url]http://bbs.chinaunix.net/viewthread.php?tid=389832[/url] 在FreeBSD下安装mysql+apache+php ======= ...

  4. Ubuntu下安装mysql与mysql workbench

    其他相关链接 Ubuntu 安装jdk:[链接] Ubuntu安装eclipse:[链接] Ubuntu下安装mysql与mysql workbench:[链接] Ubuntu配置tomcat9:[链 ...

  5. Linux下安装mysql(2) 及常见问题解决(CentOS)

    Linux下安装mysql(2) 及常见问题解决(CentOS) 参考文章: (1)Linux下安装mysql(2) 及常见问题解决(CentOS) (2)https://www.cnblogs.co ...

  6. linux上离线安装mysql_Linux下安装mysql(离线安装和在线安装)

    一:在线安装mysql 1.首先检测一下,mysql之前有没有被安装 命令:rpm -qa | grep mysql 2.删除mysql的命令: rpm -e --nodeps `rpm -qa | ...

  7. 在Mac OS环境下安装MySQL服务

    在Mac OS环境下安装MySQL服务 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我之前介绍过window环境下安装mysql服务,以及在Linux环境下安装mysql服务,今 ...

  8. mysql报错3534_win7下安装MYSQL报错:MYSQL 服务无法启动的3534问题

    上午在win7下安装MYSQL,只到"net start mysql"这一步报错:3534的错误: 于是在百度中搜索关键字"mysql服务无法启动3534". ...

  9. Ubuntu18.04下安装MySQL

    提示:以下操作均在root权限下进行. # 查看有没有安装MySQL: dpkg -l | grep mysql # 安装MySQL: apt install mysql-server 安装完成之后可 ...

最新文章

  1. 记一次 调节有音量界面 上移的bug
  2. python openvc 裁剪、剪切图片 提取图片的行和列
  3. plsql配置远程连接数据库
  4. 基于Vue的WebApp项目开发(四)
  5. PHPRunner中文版
  6. 【数据结构笔记】B树和B+树的实现,哈希查找,STL中的hash_map和unordered_map容器用法
  7. 剑指offer之分行从上到下之字行打印二叉树
  8. C#判断指定文件是否存在
  9. 电力设计手册_电气设计负荷计算方法
  10. 解析Excel2007之关键点_Sheet.xml(一)
  11. 知道ip地址如何进入电脑_如何防止局域网电脑IP地址冲突
  12. cent os7 安装zookeeper3.6.0
  13. FME突然无法连接FMS服务器
  14. 安卓逆向入门----Andriod smail 与 Java 代码
  15. 我的世界java版安装mod手机版,我的世界国际版手机版
  16. 8、双目测距及3D重建python
  17. 曾李青:早期创业公司九种死法
  18. Cocos Creator 开发实战——篮球物理游戏
  19. 推荐系统:协同过滤及其利弊
  20. 大学计算机软件专业生应该学什么

热门文章

  1. windows server 2008解决无法PING通问题
  2. mysql单列去重复group by分组取每组前几条记录加order by排序
  3. What is Proguard?
  4. 如何把数据在A表空间里面,把它IMP进B表空间
  5. Access数据库查询练习专用数据库 -手机号码归属地Access数据库_MobileDB(10万条记录)...
  6. Fastboot Normal + Recovery
  7. Android事件处理机制
  8. iphone安装Deb文件
  9. 如何将本地jar包放入本地maven仓库和远程私服仓库
  10. bzoj 4278 [ONTAK2015]Tasowanie——后缀数组