linux安装mysql升级mysql到8.0

手动操作

        1、先查看主机是否已安装mysql(linux默认已安装mysql)

        查看命令:    yum list mysql*

                             rpm -qa mysql*

        2、删除已安装的mysql

        删除命令:    yum remove mysql*

                            rpm -e mysql*

        3、创建文件夹/usr/local/mysql,并进入

                mkdir  /usr/local/mysql

                cd /usr/local/mysql

        4、下载官网的mysql的yum源

 

使用wget ,在linux上下载(没有wget的,使用 yum -y install wget安装wget)

    下载命令:    wget https://repo.mysql.com//mysql80-community-release-el6-1.noarch.rpm

 

5、使用下载的yum源升级yum包

        命令:rpm -Uvh mysql80-community-release-el6-1.noarch.rpm 

 

 

 6、   查看可以使用的mysql版本

        使用命令:  yum repolist all | grep mysql 

 

 

 7、将自己需要的版本改成enabled        (通过修改 /etc/yum.repos.d/mysql-community.repo 来实现)

            vi /etc/yum.repos.d/mysql-community.repo

                找到需要的版本号,将 enabled=0 改成 enabled=1 ,将其他版本的 enabled=1 改成 enabled=0 

                这里只修改版本中的enabled,否则安装会出错 (只把8.0的改成enabled=0 ,5.7的改成enabled=1)

 

wq!

保存退出,再次执行yum repolist enabled | grep mysql可以看到修改的结果

 



 

8、安装mysql-community-server

        命令:    yum -y install mysql-community-server

 

(遇到报错如下:)

 



 

解决办法:配置yum源,更新yum缓存

 

 

#@代码  收藏代码
  1. 1)下载repo文件   
  2. wget http://mirrors.aliyun.com/repo/Centos-7.repo  
  3.   
  4. 2)备份并替换系统的repo文件   
  5. cp Centos-7.repo /etc/yum.repos.d/   
  6. cd /etc/yum.repos.d/   
  7. mv CentOS-Base.repo CentOS-Base.repo.bak   
  8. mv Centos-7.repo CentOS-Base.repo (区分大小写)  
  9.   
  10. 3)执行yum源更新命令   
  11. yum clean all   
  12. yum makecache   
  13. yum update  
  14.   
  15. 配置完毕。  

 

 

 重新执行安装命令: yum -y install mysql-community-server

    执行过程未报错,安装成功

 



  9、 mysql命令

        启动:service mysqld start



 

     查看状态:    service mysqld status

        关闭:    service mysqld stop



 

 

        进入mysql

                musql -u root -p

 刚安装的mysql,密码默认不为空,无法登陆

 



 

查看默认密码:

#grep 'temporary password' /var/log/mysqld.log

 

 

用默认密码登录



 

 

修改默认密码

 

提示“Your password does not satisfy the current policy requirements”,密码强度不符合要求

 

我们可以降低它的密码验证强度从而可以设置任意密码

登录MySQL后

执行以下命令修改mysql全局参数配置

set global validate_password_policy=0; 设置密码强度检查等级

set global validate_password_length=3; 设置密码最低强度

set global validate_password_mixed_case_count=0;  

set global validate_password_number_count=3;  

 

执行成功了然后修改密码没有问题了

SET PASSWORD = PASSWORD('abc123');

不过,如果是为了安全起见,可以设置符合安全规则的密码,这样更好。

 

设置允许root账户进行远程连接

 

Sql代码  收藏代码
  1. mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123@asdf' WITH GRANT OPTION;  
  2. mysql> flush privileges;  

 

第一句中”%”表示任何主机都可以远程登录到该服务器上访问。如果要限制只有某台机器可以访问,将其换成相应的IP即可,如: 
GRANT ALL PRIVILEGES ON . TO root@”172.168.193.25” IDENTIFIED BY “123@asdf”; 
123@asdf是登录密码。 
第二句表示从mysql数据库的grant表中重新加载权限数据。因为MySQL把权限都放在了cache中,所以在做完更改后需要重新加载。

检测是否都是utf-8(filesystem除外),如果不是就得改,例如这个character_set_server一般是拉丁编码 
修改编码

Shell代码  收藏代码
  1. //停数据库  
  2. systemctl stop mysqld  
  3.   
  4. //进入 my.cnf 文件,一般是在etc路径下  
  5. vim /etc/my.cnf  
  6. //加入要修改的字符集 修改完:wq退出  
  7. 在[mysqld]下追加:  
  8. character-set-server=utf8  
  9.   
  10. //重启数据库  
  11. service mysqld start  

 文章来源

https://xiaojingjing.iteye.com/blog/2429403

 

 

posted @ 2019-05-01 15:16  风许下的泪  阅读(6078)  评论(0编辑  收藏  举报