mysql常用语法、命令、SQL、主从同步

1.常用语法

#查看建表语句【table_name(表名)】
show create table ups_auth_info \G;
#添加唯一约束
alter table oders add constraint idno_unique unique(idno);
alter table table_name add constraint name_unique unique(name);
#查看表中的索引
show index from table_name;
#创建索引
create index index_name_idx on table_name(column);
#删除索引
drop index index_name_idx ON table_name
#添加列
alter table 表名 add 列名 varchar(30) comment '注释';
#修改列
alter table 表名 modify 列名 varchar(31) not null comment '注释';
#删除列
alter table 表名 drop column 列名;

#my.cnf文件中mysql调优参数
bulk_insert_buffer_size=100M
net_buffer_length=10M
max_allowed_packet=100M
innodb_log_buffer_size=128M
innodb_log_file_size=128M
innodb_autoextend_increment=100
innodb_flush_method=O_DIRECT
innodb_io_capacity=2000
innodb_io_capacity_max=20000
innodb_flush_log_at_trx_commit=2

2.常用命令

#查看mysql版本
select version();
#重启mysql服务
service mysqld restart;
#启动mysql服务
service mysql start
#停止mysql服务
service mysqld stop;
#查看mysql服务状态
service mysqld status;

3.经典sql

在这里插入代码片

4.mysql8.0主从复制配置(超详细)

详细参考:https://blog.csdn.net/isis45454545454/article/details/126510152
MysQL复制过程分成三步: 
master将改变记录到二进制日志( binary log)
slave将master的binary log拷贝到它的中继日志(relay log)
slave重做中继日志中的事件,将改变应用到自己的数据库中

在这里插入图片描述

############ 配置master数据库 ############
一、master数据库 - 修改MySQL的配置文件/etc/my.cnf,新增配置如下:
#[必须]启用二进制日志,数据间复制必不可少
log-bin=log-master-bin
#设置binlog格式(
# MIXED:实际上就是前两种模式的结合。在 Mixed 模式下,MySQL 会根据执行的每一条具体的 SQL 语句来区分对待记录的日志形式,也就是在 statement 和 row 之间选择一种。
# STATEMENT:每一条会修改数据的 SQL 都会记录到 master 的 bin-log 中。slave 在复制的时候 SQL 进程会解析成和原来 master 端执行过的相同的 SQL 再次执行。
# ROW:日志中会记录成每一行数据被修改的形式,然后在 slave 端再对相同的数据进行修改。
#)
binlog-format=STATEMENT
#[必须]服务器唯一ID
server-id=2

二、master数据库 - 执行命令重启mysql服务:
systemctl restart mysqld 或 service mysql restart

三、master数据库 - 登录mysql且创建一个用户
//登录
mysql -uroot -ppassword
//mysql8授权用户需要先创建,创建和授权同一条语句的话会报错
create user slave@'%' identified by 'root!@#123';
//再授权
GRANT ALL PRIVILEGES ON *.* TO 'slave'@'%'WITH GRANT OPTION;
//刷新
flush privileges;

四、登录Mysql数据库,执行下面SQL,记录下结果中File和Position的值
show master status;

show master status; 命令执行

############ 配置slave数据库 ############
一、salve数据库 - 修改MySQL的配置文件/etc/my.cnf,新增配置如下:
#[必须]启用二进制日志,数据间复制必不可少
log-bin=log-master-bin
#设置binlog格式(
# MIXED:实际上就是前两种模式的结合。在 Mixed 模式下,MySQL 会根据执行的每一条具体的 SQL 语句来区分对待记录的日志形式,也就是在 statement 和 row 之间选择一种。
# STATEMENT:每一条会修改数据的 SQL 都会记录到 master 的 bin-log 中。slave 在复制的时候 SQL 进程会解析成和原来 master 端执行过的相同的 SQL 再次执行。
# ROW:日志中会记录成每一行数据被修改的形式,然后在 slave 端再对相同的数据进行修改。
#)
binlog-format=STATEMENT
#[必须]服务器唯一ID
server-id=2

二、salve数据库 - 执行命令重启mysql服务:
systemctl restart mysqld 或 service mysql restart

三、salve数据库 - 登录mysql且执行下面SQL
//执行前先停下slave
stop slave;

//这是从库和主库连接的关键一步,host是主库的ip,user是前面创建的slave用户,file和pos是主库show master status的信息
change master to
master_host='192.168.81.100',master_user='slave',master_password='root!@#123',
master_log_file='log-master-bin.000001',master_log_pos=157;

//执行后启动slave
start slave;

四、登录Mysql数据库,执行下面SQL,查看从数据库的状态
show slave status;

show slave status; 命令执行

5.mysql常见错误处理:

mysql出现error:Authentication plugin ‘caching_sha2_password‘ cannot be loaded
ALTER USER 'username'@'%' IDENTIFIED WITH mysql_native_password BY 'password@2019';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值