MySQL5.7版本安装

环境

  • 服务器:centos7.3
  • MySQL版本:5.7.31

安装

  • 官网下载最新MySQL版本:https://dev.mysql.com/downloads/

  • 卸载MariaDB
    1.rpm -qa | grep -i mariadb
    2.rpm -e mariadb-libs-5.5.52-1.el7.x86_64 --nodeps

  • 安装MySQL
    1.tar -xvf mysql-5.7.31-1.el7.x86_64.rpm-bundle.tar
    2.rpm -ivh mysql-community-common-5.7.31-1.el7.x86_64.rpm
    3.rpm -ivh mysql-community-libs-5.7.31-1.el7.x86_64.rpm --nodeps --force
    4.rpm -ivh mysql-community-client-5.7.31-1.el7.x86_64.rpm
    5.rpm -ivh mysql-community-server-5.7.31-1.el7.x86_64.rpm --nodeps --force

  • 启动命令
    1.service mysqld status //查看是否启动
    2.service mysqld start //启动
    3.service mysqld stop //停止
    4.service mysqld restart //重启

  • 查看端口
    netstat -antl|grep 3306

  • 修改登录密码
    1.查看临时密码:grep password /var/log/mysqld.log
    在这里插入图片描述
    2.通过临时密码登录mysql后执行:alter user ‘root’@‘localhost’ identified by ‘your password’;
    如果报错:ERROR 1820 (HY000): Unknown error 1820,用另外一种修改密码方法,如下:
    SET PASSWORD = PASSWORD(‘123’)

  • 添加远程访问
    登录MySQL后,执行
    grant all privileges on *.* to ‘root’@‘%’ identified by ‘your password’ ;

  • mysql5.7版本默认安装目录

默认配置文件:/etc/my.cnf
默认数据目录:/var/lib/mysql

  • 修改默认的数据目录

1.关闭mysql服务:service mysqld stop
2.修改配置文件:vim /etc/my.cnf,将datadir和socket指向自己的目录,如/home/mysql/data
#datadir=/var/lib/mysql
#socket=/var/lib/mysql/mysql.sock
datadir=/home/mysql/data
socket=/home/mysql/data/mysql.sock
3.(新库,且修改数据目录datadir前没有启动数据库,则这个步骤不需要)拷贝原默认目录下的所有数据到新目录中:cp -r /var/lib/mysql/* /home/mysql/data
4.给新目录赋予权限:chown -R mysql:mysql /home/mysql/data
5.重启服务:service mysqld start
6.重启后会报错,执行如下命令即可:setenforce 0。该报错及解决命令的详细说明,见https://www.iteye.com/blog/jejoker-1882028
最后验证:创建数据库、表验证是否生成到指定目录
7.目录更改后,虽然用客户端工具连接mysql没有问题。但是用mysql命令行访问是不行的,报错:
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’
两种解决方法:
1.建立软连接:ln -s /home/mysql/data/mysql.sock /var/lib/mysql/mysql.sock
2.vim /etc/my.cfn,添加如下内容
[client]
socket=/home/mysql/data/mysql.sock

  • 修改数据库密码(版本大于mysql5.7)
    mysql5.7以上版本,对设置的密码要求严格。默认是要包含大小写、数字、特殊字符。所以如果想把密码修改简单格式,如123456。则需要先设置两个参数,过程如下。其中,validate_password_policy=0表示只对密码做长度限制,validate_password_length=1表示密码长度应大于1.

mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
mysql>alter user ‘root’@‘localhost’ identified by ‘123456’;

密码修改后,远程登录就会失效。可以在密码修改后,直接开启远程登录模式

mysql>grant all privileges on *.* to ‘root’@‘%’ identified by ‘123456’ ;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值