Linux安装Mysql8.0.15
上传文件到服务器
链接:https://pan.baidu.com/s/1AOCnJ2QwFHKP4Eowc9mwRw
提取码:z8wf
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1kPF6tIi-1601001821574)(A837380348E941958BECFD0F8261AE6D)]
解压安装
新建目录:/home/mysql
加压文件到此目录
tar -zxvf /root/tools/mysql-8.0.15-1.el7.x86_64.rpm-bundle.tar -C /home/mysql/
rpm -ivh mysql-community-common-8.0.15-1.el7.x86_64.rpm mysql-community-libs-8.0.15-1.el7.x86_64.rpm mysql-community-client-8.0.15-1.el7.x86_64.rpm mysql-community-server-8.0.15-1.el7.x86_64.rpm
启动
service mysqld start
service mysqld stop
service mysqld status
授权登陆
查看默认密码
grep "A temporary password is generated for root@localhost" /var/log/mysqld.log
进入MySQL
mysql -uroot -p
修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'mysql@lm.com';
新建用户并授权登陆
create user 'xixi'@'%' identified by 'MyNewPass4!dddddd';
grant all privileges on *.* to 'xixi'@'%' with grant option;
flush privileges;
打开防火墙
开放mysql端口,默认是3306
,如果有改动,请开放对应的端口,详见liunx限制端口
测试连接
使用工具进行数据库连接测试:
注意
- 安装过程中出现包依赖的情况要安装对应的包,不行就百度搜一下,挂在一下源进行安装就行了。
- 查询用户信息
select host, user, authentication_string, plugin from user;
GRANT ALL ON *.* TO 'root'@'%';
GRANT ALL ON 表示所有权限,% 表示通配所有 host,可以访问远程。
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你自己的密码';
主从配置
master节点配置
参考网页
https://www.cnblogs.com/cloudhere/p/10991520.html
创建用于主从同步的数据库
create database zn;
use zn;
create table T1(id int,name varchar(20));
停止数据库服务,编辑配置文件,重启服务
service mysqld stop
service mysqld start
service mysqld restart
service mysqld stauts
systemctl stop mysqld
systemctl start mysqld
systemctl restart mysqld
systemctl status mysqld
vi /etc/my.cnf
log-bin=mysql-bin-master #启用二进制日志
server-id=1 #本机数据库ID 标示
binlog-do-db=zn #可以被从服务器复制的库, 二进制需要同步的数据库名
binlog-ignore-db=mysql #不可以被从服务器复制的库
重启服务
新建用于主从同步的用户,并授权
grant replication slave on *.* to 'slave'@'%' with grant option;
查看信息
show master status;
show binlog events\G
查看二进制文件
cd /var/lib/mysql/
将要同步的数据库导出,并发送给slave节点,复制前要保证同步的数据库一致
mysqldump -uroot -p123 zn >zn.sql #可以导出数据库
scp zn.sql 192.168.210.130:/root
slave节点配置
测试能够连通主数据库
只有复制的权限, 是看不到其他库的
mysql -uslave -p123 -h 10.111.42.80
show databases;
本地创建数据库zn
create database zn;
拷贝数据到数据库
mysql -uroot zn<zn.sql
停止服务,修改配置,启动服务
vim /etc/my.cnf
server-id=2
停止slave服务,设置master节点ip,master_user同步用户和密码
mysql -u root
stop slave;
change master to master_host='192.168.210.132',master_user='slave',master_password='123';
start slave;
show slave status\G
测试主从同步
进入master节点
show processlist\G
select * from T1;
insert into T1 values (1,'man');
select * from T1;
进入slave节点
use zn;
select * from T1;
提示
查看数据库端口
show global variables like 'port';