mysql安装
mysql单机版安装:
1.下载mysql安装包:
2.检查系统是否自带安装MySQL
rpm -qa |grep mysql
如有卸载:rpm -e mysql*** 普通删除
rpm -e --nedeps *** 强力删除
3.上传安装包,进行解压
tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
重新命名:
mv mysql-5.7.25-linux-glibc2.12-x86_64 mysql-5.7.25
4.添加系统mysql组和mysql用户
查看是否存在:
cat /etc/group |grep mysql
不存执行添加命令:
groupadd mysql
useradd -r -g mysql mysql
5.安装
创建data目录
cd mysql-5.7.25
mkdir data
chown -R mysql.mysql /opt/mysql/mysql-5.7.25
在cd /mysql-5.7.25/support-files目录创建my_default.cnf
[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
basedir = /opt/mysql/mysql-5.7.25
datadir = /opt/mysql/mysql-5.7.25/data
port = 3306
socket = /tmp/mysql.sock
character-set-server=utf8
log-error = /opt/mysql/mysql-5.7.25/data/mysqld.log
pid-file = /opt/mysql/mysql-5.7.25/data/mysqld.pid
拷贝文件
cp my_default.cnf /etc/my.cnf
初始化mysqld
./bin/mysqld --initialize --user=mysql --basedir=/opt/mysql/mysql-5.7.25/ --datadir=/opt/mysql/mysql-5.7.25/data/
初始化之后,查看日志:
/opt/mysql/mysql-5.7.25/data/mysqld.log
里面有临时密码
把启动脚本放到开江初始化目录
cp support-files/mysql.server /etc/init.d/mysql
修改环境变量:
vi /etc/profile 添加如下两行:
export MYSQL_HOME=/opt/mysql/mysql-5.7.25
export PATH=$PATH:${MYSQL_HOME}/bin
启动服务
service mysql start
登陆:
mysql -u root -p (密码为上面初始化之后的密码,日志文件里)
修改密码
set password=password('123456');
grant all privileges on *.* to root@'%' identified by '123456';
flush privileges;
添加远程访问权限
use mysql;
update user set host='%' where user = 'root';
如果遇到这样的错误忽略
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
flush privileges;
service mysql stop;
service mysql start;
一主多从的配置:
首先把已经安装好的系统复制3份,启动即可,查看ip,修改为固定ip
在几个实例中分别
在/etc/my.conf分别增加如下信息
主(192.168.0.111:3306)
log-bin=mysql-bin
server-id=33061
从(192.168.0.112:3306)
server-id=33062
从(192.168.0.113:3306)
server-id=33063
从(192.168.0.114:3306)
server-id=33064
在四个服务器上在主服务上执行
grant replication slave on *.* to 'copy'@'%' identified by '123456';
并使用reset master;重置主服务器状态:
在使用show master status;获取二进制文件binlog
可获取:File 和Position
然后分别在112,113,114上使用命令
stop slave ;
reset slave;
然后分别执行
change master to master_host='192.168.1.5',master_user='copy',
master_port=3306,master_password='123456',
master_log_file='mysql-bin.000001',master_log_pos=437;
设置主从关系(change master to master_host表示服务器ip,
master_user表示服务器用户名,master_port表示端口号,
master_password表示密码,master_log_file表示二进制日志文件名称,
master_log_pos表示二进制日志文件地址)
然后在从服务器上使用start slave;开启主从关系;
使用命令show slave status \G 查看服务器功能状态
到目前为止一主多从就配置好了
多主多从的数据库配置:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)