mysql 5.7.23 搭建主从备份说明

一、安装

å¨è¿éæå¥å¾çæè¿°

1、上传安装文件

2 xshell 命令查看


3、将安装包移动到user/local目录下

 


4、解压mysql安装包
tar -zxvf  mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz1
重命名文件

mv mysql-5.7.23-linux-glibc2.12-x86_64 mysql mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录。

5、建立软连接
建议一般不要修改默认文件名,通过软连接来完成

ln -s mysql-5.7.23-linux-glibc2.12-x86_64 mysql


6、创建mysql用户
  useradd mysql
7、建立mysql数据目录,并赋予权限
7.1在根目录下

 mkdir -p data
 cd data
 mkdir -p mysql

7.2授权

 chown mysql:mysql -R /data/mysql

看到data 的用户变成了mysql

å¨è¿éæå¥å¾çæè¿°
8、配置mysql参数
在/etc目录下创建my.cnf文件,并进行配置

  vim /etc/my.cnf

[mysqld]
bind-address=0.0.0.0
port=3310
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
!includedir  /etc/my.cnf.d
这里只是简单的配置mysql运行的几个参数。

å¨è¿éæå¥å¾çæè¿°
注意:log-error 一定要配置,因为如果mysql启动错误,可以从日志文件中找到错误原因。其次bind—address配置0.0.0.0是为了监听所有的连接。 编辑完后 按esc 后按住 shift+: 输入 wq表示保存并退出 。

9、mysql初始化
9.1注意这里需要进到刚刚解压mysql的bin目录下

cd usr/local/mysql/bin
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

查看错误日志文件是否有错

vim /data/mysql/mysql.err 

å¨è¿éæå¥å¾çæè¿°
可以看到日志有错误提示,提示与刚刚初始化命令中datadir相关

å¨è¿éæå¥å¾çæè¿°

看到刚刚初始化命令中datadir前面少了–,所以大家安装的时候一定要细心。

9.2 重新初始化

注意重新初始化之前一定要把datadir目录下的文件清空,不然初始化还会报错进入到datadir目录 删除数据

cd /data/mysql/
 rm -rf *

删除后,重新初始化

 cd /usr/local/mysql/bin/
  ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

再次查看错误日志文件是否有错

vim /data/mysql/mysql.err 
å¨è¿éæå¥å¾çæè¿°
 可以看到到日志文件没有报错,而且有了临时密码,表示初始化成功

10.登陆mysql
10.1、初始化成功后,查看初始化密码

cat /data/mysql/mysql.err |grep password
å¨è¿éæå¥å¾çæè¿°

并把密码复制下来
到这里的时候,发现这个xshell背景太丑,字体太小。设置了下xshell背景,效果下面可见。

10.2、登录mysql

 ./mysqladmin -u root -p password
并输入刚刚复制的密码,但是 却提示不能通过mysql.sock文件实现连接

三、安装相关问题
1、没有生成mysql.sock文件
查找mysql.sock 文件

find / -name mysql.sock


表示没有找到mysql.sock文件。
所以就尝试重启服务器即我的虚拟机,看服务器在启动时会不会重新创建该文件,然而重启后并没有卵用

å¨è¿éæå¥å¾çæè¿°又百度了下说连接localhost通常通过一个Unix域套接字文件进行,一般是/tmp/mysql.sock。如果套接字文件被删除了,本地客户就不能连接。可以通过tcp/ip协议来连接。
即:


 mysql -uroot -h 127.0.0.1 -p 

但是 又又报错了

å¨è¿éæå¥å¾çæè¿°
2 配置环境变量
表示不认识mysql命令,到目前位置还未配置环境变 即没有将mysql的bash加到path中。
编辑环境变量文件

vim /etc/profile

在后面添加系统bin路径以及mysql解压路径

export MYSQL_HOME=/usr/local/mysql/
export PATH=$PATH:$MYSQL_HOME/bin

å¨è¿éæå¥å¾çæè¿°
配置好后再重启Xshell
然后再执行
mysql -uroot -h 127.0.0.1 -p

然后再输入刚刚临时文件的密码,但是 又又又报错了, 我内心快要崩溃了

å¨è¿éæå¥å¾çæè¿°
到这里,又去问度娘,可能mysql服务没有启动,对啊,刚刚重启了虚拟机,并没有启动mysql服务。

3、启动mysql服务
service mysql start
å¨è¿éæå¥å¾çæè¿°


mysql启动成功后,再通过tcp/ip连接,就在以为快要打工告成的时候,居然又报了同样的错

å¨è¿éæå¥å¾çæè¿°
4、带端口号的tcp/ip 连接
那到这里,估计就是端口号的问题了, 百度了下mysql -h -uroot -p 命令默认的窗口是3306, 而我配置文件里的窗口是3310所以这里还需要指定端口号,真的是想要与众不同,结果可把自己坑惨了……

 mysql -h 127.0.0.1 -uroot -p --port=3310

然后再输入密码:
终于等到你……

å¨è¿éæå¥å¾çæè¿°
5、重新设置密码
这里需要先重新设置密码,不然进行数据库操作

set password=password('123456');
flush privileges; 并刷新权限

如果不先设置密码会提示如下错
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
然后数据库就可以使用了

å¨è¿éæå¥å¾çæè¿°
6、解决不能生成mysql.sock文件问题
mysql.sock 是在配置文件my.cnf中。因为原来的位置不能生成,所以把原来的配置注释掉,重新配置一个路径。
6.1修改my.cnf

vim /etc/my.cnf
å¨è¿éæå¥å¾çæè¿°

6.2 重启mysql 服务

 service mysql restart
å¨è¿éæå¥å¾çæè¿°


重启服务后我们进入新配置的socket路径下看到了mysql.sock身影

å¨è¿éæå¥å¾çæè¿°
通过这个socket文件连接数据库,成功连接

mysql -u root -p -S /data/mysql/mysql.sock

建立软连接

ln -s  /data/mysql/ /tmp/

然后也可以使用tmp路径登陆

mysql -u root -p -S /tmp/mysql.sock
å¨è¿éæå¥å¾çæè¿°


四、设置远程连接
1、设置user表
如果要远程访问数据库,只需要把拥有全部权限的root账号对应的记录的Host字段改为%就可以了。

update user  set Host = '%' where Host = 'localhost' and  user = 'root';
select host,user from user;
å¨è¿éæå¥å¾çæè¿°


在本地windows环境下访问虚拟机上的mysql
查看虚拟机的的ip

ifconfig -a
å¨è¿éæå¥å¾çæè¿°


2、本地dos访问虚拟机的mysql
mysql -h 192.168.85.128 -uroot -p --port=3310

可以正常访问:

å¨è¿éæå¥å¾çæè¿°
经过一天的折腾总算是把mysql安装成功,其中也通过度娘解决了很多问题,对linux命令仍然不熟悉,不理解其中意思,很多只是照着葫芦画瓢,linux学习任重而道远。
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值