Mysql常用命令

一、创建用户并开启远程服务

查看数据库用户:

SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

创建用户并开启远程访问:

CREATE USER 'canal'@'%' IDENTIFIED BY 'canal123';
GRANT ALL PRIVILEGES ON *.* TO 'canal'@'%' IDENTIFIED BY 'canal123' WITH GRANT OPTION; 
FLUSH PRIVILEGES;

创建只读权限用户:

CREATE USER 'readonly'@'%' IDENTIFIED BY '123456';

GRANT SELECT ON *.* TO 'readonly'@'%';

FLUSH PRIVILEGES;

二、数据库主从命令

1、查看数据库binlog日志:

  • 查看数据库主从状态:

show master status \G

  • 查看从库状态

show slave status \G

查看binlog列表:show binary logs;
查看最新binlog: show master status;

查看指定binlog内容:show binlog events in 'mysql-bin.000002';

  • mysqlbinlo日志导出命令:

mysqlbinlog --base64-output=decode-rows -v --start-datetime='2021-01-27 12:12:00' --stop-datetime='2021-01-27 12:13:00' -d axc_base /data/3307/logs/bin/mysql-bin.000013 >user_error.sql

mysqlbinlog --base64-output=decode-rows -v --start-position=469853132 --stop-position=539366446 -d mvs_base /data/mysql/binlog/33060-bin.000917 > user_error.sql

  • 在master上删除一条记录,而slave上找不到

解决办法:
通过命令直接跳过同步
mysql>stop slave;
mysql>set global sql_slave_skip_counter=1;
mysql>start slave;

或者先停止从库,查看不一样的数据,把从库恢复到和主库一致

三、数据库操作字段命令

  • 创建数据库

CREATE DATABASE `mvs_base` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

CREATE DATABASE `mvs_base` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

  • 查看数据库字符集

use mvs_base;

show variables like '%character%';
show variables like 'collation%';

  • 导入数据库脚本

source  /data/mvs_base.sql;

  • 导出数据库表脚本

mysqldump -uroot -proot mvs_202112  mvs_steps_20 > /mvs_steps_20.sql;

  • 从库导出数据库脚本

mysqldump -uroot -p  --master-data=2 --single-transaction -B mvs_base   > /data/backup/mvs_base.sql

  • 在指定字段后添加字段

alter table pf_admin_login_log add  COLUMN  `day_count` int(8) DEFAULT '0' COMMENT '当日登录次数' after version;

  • 设置指定字段默认值

alter table mvs_spo2_2 alter column archived set default 0;

  • 设置指定字段类型及默认值

ALTER TABLE mvs_hr_19 MODIFY COLUMN `archived` tinyint(3) NOT NULL DEFAULT '0' COMMENT '状态(0:正常,1:已删除)';

  • 添加唯一索引

ALTER TABLE `mvs_warn_history` ADD UNIQUE INDEX `USER_ID_WARN_UNIQUE_INDEX` (`user_id`, `warn_datetime`) USING BTREE ;

注意:数据库中字段设置类型为tinyint(1),在转换为实体类时是boolean类型,因为数据库没有boolean,把tinyint(1)默认为boolean类型,1为true,0为false

四、数据库查看参数

查看mysql最大连接数

show variables like '%max_connection%'

五、数据库查询导出文件

select * from mb_user_info into outfile "/data/file/user.xls"

六、查看数据库占用空间

1、查看数据库表占用空间(包含数据大小及数据索引大小)及数据条数

select TABLE_NAME,concat(round((DATA_LENGTH+INDEX_LENGTH)/1024,2),'kB') as data,TABLE_ROWS from TABLES where TABLE_SCHEMA='mvs_202202';

2、查看数据库下所有表的总占用空间(包含数据大小及数据索引大小)

select concat(round(sum((INDEX_LENGTH+DATA_LENGTH)/1024/1024/1024),2),'GB') as total_data from TABLES where table_schema= 'mvs_202202';

linux下占用空间:

表占用空间:

 库占用空间:

 以上可知:

单表最大6g,单条数据根据表结构不同最大1.3k,最小0.18k,平均每天占用磁盘空间17G左右

表数据日最高:血压表近6W,佩戴状态表420W,心率表520W,呼吸率表560W,睡眠表27W,血氧表500W,运动表1500W,温度表600W,轨迹表16W

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值