查看Mysql版本
- MySql查询
- MySql语句
- MySql数据库
- MySql表
- MySql表结构
- MySql变量
- MySql字段类型
- Mysql安装
MySql查询
MySql常见语句
#查版本
SELECT VERSION();
#查当前时间
SELECT NOW();
#查时间戳
SELECT FROM_UNIXTIME(1715270400);
#日期转时间戳
SELECT UNIX_TIMESTAMP("2024-05-10 00:00:00");
SELECT CURDATE();
#备份数据库
mysqldump -h127.0.0.1 -uroot -p123456 db_2024.* > mysqldump.sql
#mysql登录
mysql -uroot -p
#导入数据库
use db_2024;
source /path/to/mysqldump.sql;
授权用户
#授权
grant all privileges on db_2024.* to 'user_xx'@'%' identified by '123456';
#取消授权
REVOKE all privileges ON db_2024.* FROM 'user_xx'@'%';
#刷新权限
flush privileges;
创建数据库
create database db_2024 default charset 'utf8mb4';
show database;
use db_2024;
创建表
show tables;
CREATE TABLE `user` (
`id` int NOT NULL AUTO_INCREMENT COMMENT '自增ID',
`open_id` varchar(255) NOT NULL DEFAULT '' COMMENT 'OPEN ID',
`account` varchar(255) NOT NULL COMMENT '账号',
`nickname` varchar(255) NOT NULL DEFAULT '' COMMENT '昵称',
`password` varchar(255) NOT NULL DEFAULT '' COMMENT '密码',
`avatar` varchar(255) NOT NULL DEFAULT '' COMMENT '头像',
`email` varchar(255) NOT NULL DEFAULT '' COMMENT '邮箱',
`mobile` char(11) NOT NULL DEFAULT '' COMMENT '手机号',
`is_locked` tinyint NOT NULL DEFAULT '0' COMMENT '锁定,1是 0否',
`status` tinyint NOT NULL DEFAULT '0' COMMENT '状态,0有效 1无效 2已删除',
`last_login_ip` varchar(255) NOT NULL DEFAULT '' COMMENT '最后登录IP',
`last_login_time` datetime DEFAULT NULL COMMENT '最后登录时间',
`expired_at` datetime DEFAULT NULL COMMENT '过期时间',
`created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`updated_at` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`deleted_at` datetime DEFAULT NULL COMMENT '删除时间',
PRIMARY KEY (`id`),
UNIQUE KEY `account` (`account`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 AUTO_INCREMENT=1 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户表';
#创建临时表
create table user like old_user;
create temporary table user like user;
create procedure p_user delimiter //;
declare var_time=current_timestamp;
declare data=select * from user where last_login_time>var_time;
fetch from data;
//todo select insert here
end //;
修改字段
修改表结构
alter table user add column `column1` varchar(255) NOT NULL default '' COMMENT '字段' after `deleted_at`;
ALTER TABLE user drop column `column1`;
ALTER TABLE user add unique key key1(`column1`);
alter table user change old_column `column1` varchar(255) NOT NULL default '' COMMENT '字段';
#清空表数据(记得先备份数据)
truncate table user;
#删除表(表删除,数据也被删,记得先备份数据)
drop table user;
查询语句
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'db_2024' ;
SELECT * FROM information_schema.COLUMNS WHERE TABLE_SCHEMA='db_2024' AND TABLE_NAME='user';
SELECT * FROM user where id=1 limit 1;
SELECT count(1) as total,count(distinct username) count_distinct_username FROM user where is_online=1;
SELECT * FROM user where id in (1,2,3) limit 1;
SELECT * FROM user where id <> 1 limit 1;
SELECT * FROM user where username like '%zhang%' limit 1,10;
SELECT * FROM user where last_login_time is not null limit 1,10;
SELECT * FROM user where find_in_set("玩游戏",hobbies);
#子查询
SELECT user.*,(select 1 from t_user_log where t_user_log.user_id=user.id order by id desc limit 1) as user_log
FROM user where id=1 limit 1;
#关联查询
SELECT user.*,t_user_bank.* from user inner join t_user_bank.user_id=user.id where user.id=1;
SELECT user.*,t_user_bank.* from user left join t_user_bank.user_id=user.id where user.id=1;
SELECT user.*,t_user_bank.* from user right join t_user_bank.user_id=user.id where user.id=1;
#having
SELECT * FROM t_user_bank where status=1 group by user_id having count(user_id) > 1;
SELECT *,group_concat(id order by id desc separator "\n") as concatUserId
FROM t_user_bank
where status=1 group by user_id;
SELECT * FROM user where status=1 order by status desc;
#临时表
SELECT * FROM user where user_id in (SELECT user_id from order where status=1);
SELECT o.* FROM (SELECT user_id from order where status=1) as o order by o.id desc;
#插入语句
insert into user (username,email) values("zhangsan","test@test.com");
insert into user (username,email) values("zhangsan","zhangsan@test.com"),("lisi","lisi@test.com");
insert into user select * from old_user;
#替换语句
replace into test (id,age,name) value (2,2,'t2');
#更新语句
update user set status=2,update_at=current_timestamp where id=1 limit 1;
#删除语句
delete from user where id=1 limit 1;
Mysql版本
5.6
5.7
8.0(8.0.40-0ubuntu0.24.04.1)
MySql数据库 (2)
- db_2024
- performance_schema
各版本对比
1、5.6对比5.5
1、可以修改未压缩表的 InnoDB 页大小设置为 8KB 或 4KB ,默认是 16KB。
2、InnoDB 的 redo log 文件可存储的最大值从 4g 升到 512g。
3、可以创建全文索引。
4、可以设置 innodb 压缩级别 , 级别等级为 0-9。
5、默认用独立的表空间 ibd。
> `create table external (x int unsigned not null primary key)data directory = '/volumes/external1/data';`
6、新增参数innodb_page_size可以设置page大小。
7、整合了memcached API,可以使用API来直接访问innodb表,并非SQL(减少SQL解析、查询优化代价)。
8、Innodb 将 flush 刷盘操作从主线程移动到其他线程。
9、Undo Log 可以保存在独立的表空间。
10、最大分区数量增加到 8192。
11、支持显示分区选择,如: SELECT * FROM t PARTITION (p0, p1) WHERE c < 5。
12、Mysql集群,在这个版本作为独立的产品发布,存储引擎不是默认的 innodb ,而是 NDB。
13、复制和日志记录,可以从远程服务器读取 binlog,延迟复制。
14、优化器增强,从5.6开始,可以用 EXPLAIN 来查看 DELETE,INSERT,REPLACE,UPDATE等 DML 操作的执行计划。 在这之前,它只支持 SELECT 操作。优化了子查询和主机缓存。
15、统计信息持久化,mysqld重启后不丢失。
2、5.7对比5.6
1、用户表 mysql.user 的 plugin字段不允许为空, 默认值是 mysql_native_password,而不是 mysql_old_password,不再支持旧密码格式。
2、增加密码过期机制,过期后需要修改密码,否则可能会被禁用,或者进入沙箱模式。
3、提供了更为简单SSL安全访问配置,并且默认连接就采用SSL的加密方式。
4、MySQL数据库从5.7.8版本开始,也提供了对JSON的支持。
5、可以混合存储结构化数据和非结构化数据,同时拥有关系型数据库和非关系型数据库的优点。
能够提供完整的事务支持。
6、generated column是MySQL 5.7引入的新特性,所谓generated column,就是数据库中这一列由其他列计算而得。
7、在MySQL 5.7 之前,如果用户输入了错误的SQL语句,按下 ctrl+c ,虽然能够”结束”SQL语句的运行,但是,也会退出当前会话,MySQL 5.7对这一违反直觉的地方进行了改进,不再退出会话。
8、MySQL 5.7可以explain一个正在运行的SQL,这对于DBA分析运行时间较长的语句将会非常有用。
9、sys schema是MySQL 5.7.7中引入的一个系统库,包含了一系列视图、函数和存储过程, 该项目专注于MySQL的易用性。例如:如何查看数据库中的冗余索引;如何获取未使用的索引;如何查看使用全表扫描的SQL语句。
10、在线设置 复制的过滤规则不再需要重启MySQL,只需要停止SQLthread,修改完成以后,启动SQLthread。
11、innodb_buffer_pool_size 参数是动态的,允许您在不重启服务器的情况下调整缓冲池的大小。
12、Online DDL MySQL 5.7支持重命名索引和修改varchar的大小,这两项操作在之前的版本中,都需要重建索引或表。
13、在线开启GTID,在之前的版本中,由于不支持在线开启GTID,用户如果希望将低版本的数据库升级到支持GTID的数据库版本,需要先关闭数据库,再以GTID模式启动,所以导致升级起来特别麻烦。
14、支持多线程来刷新缓冲池中的脏页面,内存数据页跟磁盘上数据页内容不一致,将内存页称为脏页。
15、InnoDB 支持使用 spatial 索引来索引空间数据类型。
16、默认行格式由 compact 改为 DYNAMIC。
17、允许在某个时间点,有多个触发事件。之前:对于触发器事件(INSERT、UPDATE、DELETE)和操作时间(BEFORE、AFTER)的组合,一个表最多只能有一个触发器,即在某个触发时间点只能有一个触发事件。
18、可将多个服务器的内容备份到一个服务器。
3、8.0对比5.7
1、新的系统字典表,整合了存储有关数据库对象信息的事务数据字典,所有的元数据都用InnoDB引擎进行存储。
2、安全和用户管理,新增caching_sha2_password认证插件,并且是默认的身份认证插件。性能和安全方面加强权限支持role,新增密码历史记录功能,限制重复使用以前的密码。
3、innodb 增强
a、新增INFORMATION_SCHEMA.INNODB_CACHED_INDEXES,查看每个索引缓存在InnoDB缓冲池中的索引页数。
b、InnoDB临时表都将在共享临时表空间ibtmp1中创建。
c、对于SELECT … FOR SHARE和SELECT … FOR UPDATE语句,InnoDB支持NOWAIT和SKIP LOCKED innodb_undo_tablespaces的最小值为2,并且不再允许将innodb_undo_tablespaces设置为0。最小值2确保回滚段始终在撤消表空间中创建,而不是在系统表空间中创建
支持 ALTER TABLESPACE … RENAME TO 语法。
d、新增INFORMATION_SCHEMA.INNODB_TABLESPACES_BRIEF视图。
e、新增了动态配置项 innodb_deadlock_detect,用来禁用死锁检查,因为在高并发系统中,当大量线程等待同一个锁时,死锁检查会大大拖慢数据库。
f、支持使用innodb_directories选项在服务器脱机时将表空间文件移动或恢复到新位置。
g、新增innodb_dedicated_server,让InnoDB根据服务器上检测到的内存量自动配置innodb_buffer_pool_size,innodb_log_file_size,innodb_flush_method。当innodb_dedicated_server启用时,InnoDB根据服务器上检测到的内存量自动配置以下选项:innodb_dedicated_server:自动配置缓冲池大小;innodb_log_file_size:自动配置的日志文件大小;innodb_flush_method:O_DIRECT_NO_FSYNC。
h、MySQL 8.0更好支持文档型数据库和JSON。
i、不可见索引,开始支持invisible index,在优化SQL的过程中可以设置索引为不可见,优化器不会利用不可见索引。
j、支持降序索引,可以对索引定义 DESC,之前,索引可以被反序扫描,但影响性能,而降序索引就可以高效的完成支持RANK(), LAG()、NTILE()等函数。
k、正则表达式增强,提供了REGEXP_LIKE(),EGEXP_INSTR(), REGEXP_REPLACE(), REGEXP_SUBSTR()等函数。
l、新增备份锁,允许在线备份期间的DML,同时防止可能导致快照不一致的操作。 备份锁由LOCK INSTANCE FOR BACKUP和UNLOCK INSTANCE语法支持
m、默认字符集由latin1变为utf8mb4。
4、8.0版特性及增强
1、配置文件增强
MySQL 8.0版本支持在线修改全局参数持久化,通过加上PERSIST关键字,可以将调整持久化到新的配置文件中,再次重启db还可以应用到最新的参数。对于加上 PERSIST 关键字修改参数命令,MySQL系统会生成一个包含json格式数据的 mysqld-auto.cnf 文件,比如执行:
set PERSIST binlog_expire_logs_seconds = 604800 ; #内存和json文件都修改,重启还生效
set GLOBAL binlog_expire_logs_seconds = 604800 ; #只修改内存,重启丢失
系统会在数据目录下生成一个包含如下内容的 mysqld-auto.cnf 的文件:
{ “mysql_server”: {" binlog_expire_logs_seconds ": “604800” } }
当 my.cnf 和 mysqld-auto.cnf 同时存在时,后者具有高优先级。
2、InnoDB性能提升
废除buffer pool mutex, 将原来一个mutex拆分成多个,提高并发拆分LOCK_thd_list 和 LOCK_thd_remove 这两个mutex,大约可提高线程链接效率5%。
3、行缓存
MySQL8.0的优化器可以估算将要读取的行数,因此可以提供给存储引擎一个合适大小的row buffer来存储需要的数据。大批量的连续数据扫描的性能将受益于更大的record buffer。
4、改进扫描性能
改进InnoDB范围查询的性能,可提升全表查询和范围查询 5-20%的性能。
5、优化器增强,支持隐藏索引。
6、支持窗口函数、公用表表达式(Common Table Expressions)简称为CTE
MySql表
- db_2024
- performance_schema
MySql表结构
- db_2024
- performance_schema
MySql变量 664
| 变量名称 | 变量值 |
|---|---|
| activate_all_roles_on_login | OFF |
| admin_address | |
| admin_port | 33062 |
| admin_ssl_ca | |
| admin_ssl_capath | |
| admin_ssl_cert | |
| admin_ssl_cipher | |
| admin_ssl_crl | |
| admin_ssl_crlpath | |
| admin_ssl_key | |
| admin_tls_ciphersuites | |
| admin_tls_version | TLSv1.2,TLSv1.3 |
| authentication_policy | *,, |
| auto_generate_certs | ON |
| auto_increment_increment | 1 |
| auto_increment_offset | 1 |
| autocommit | ON |
| automatic_sp_privileges | ON |
| avoid_temporal_upgrade | OFF |
| back_log | 151 |
| basedir | /usr/ |
| big_tables | OFF |
| bind_address | 127.0.0.1 |
| binlog_cache_size | 32768 |
| binlog_checksum | CRC32 |
| binlog_direct_non_transactional_updates | OFF |
| binlog_encryption | OFF |
| binlog_error_action | ABORT_SERVER |
| binlog_expire_logs_auto_purge | ON |
| binlog_expire_logs_seconds | 2592000 |
| binlog_format | ROW |
| binlog_group_commit_sync_delay | 0 |
| binlog_group_commit_sync_no_delay_count | 0 |
| binlog_gtid_simple_recovery | ON |
| binlog_max_flush_queue_time | 0 |
| binlog_order_commits | ON |
| binlog_rotate_encryption_master_key_at_startup | OFF |
| binlog_row_event_max_size | 8192 |
| binlog_row_image | FULL |
| binlog_row_metadata | MINIMAL |
| binlog_row_value_options | |
| binlog_rows_query_log_events | OFF |
| binlog_stmt_cache_size | 32768 |
| binlog_transaction_compression | OFF |
| binlog_transaction_compression_level_zstd | 3 |
| binlog_transaction_dependency_history_size | 25000 |
| binlog_transaction_dependency_tracking | COMMIT_ORDER |
| block_encryption_mode | aes-128-ecb |
| build_id | 8a62e80b96302ba877f897271ca09d5434e0baf6 |
| bulk_insert_buffer_size | 8388608 |
| caching_sha2_password_auto_generate_rsa_keys | ON |
| caching_sha2_password_digest_rounds | 5000 |
| caching_sha2_password_private_key_path | private_key.pem |
| caching_sha2_password_public_key_path | public_key.pem |
| character_set_client | utf8mb3 |
| character_set_connection | utf8mb3 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8mb3 |
| character_set_server | utf8mb4 |
| character_set_system | utf8mb3 |
| character_sets_dir | /usr/share/mysql/charsets/ |
| check_proxy_users | OFF |
| collation_connection | utf8mb3_unicode_ci |
| collation_database | utf8mb4_0900_ai_ci |
| collation_server | utf8mb4_0900_ai_ci |
| completion_type | NO_CHAIN |
| concurrent_insert | AUTO |
| connect_timeout | 10 |
| connection_memory_chunk_size | 8192 |
| connection_memory_limit | 18446744073709551615 |
| core_file | OFF |
| create_admin_listener_thread | OFF |
| cte_max_recursion_depth | 1000 |
| datadir | /var/lib/mysql/ |
| default_authentication_plugin | caching_sha2_password |
| default_collation_for_utf8mb4 | utf8mb4_0900_ai_ci |
| default_password_lifetime | 0 |
| default_storage_engine | InnoDB |
| default_table_encryption | OFF |
| default_tmp_storage_engine | InnoDB |
| default_week_format | 0 |
| delay_key_write | ON |
| delayed_insert_limit | 100 |
| delayed_insert_timeout | 300 |
| delayed_queue_size | 1000 |
| disabled_storage_engines | |
| disconnect_on_expired_password | ON |
| div_precision_increment | 4 |
| end_markers_in_json | OFF |
| enforce_gtid_consistency | OFF |
| eq_range_index_dive_limit | 200 |
| error_count | 0 |
| event_scheduler | ON |
| expire_logs_days | 0 |
| explain_format | TRADITIONAL |
| explicit_defaults_for_timestamp | ON |
| external_user | |
| flush | OFF |
| flush_time | 0 |
| foreign_key_checks | ON |
| ft_boolean_syntax | + -><()~*:""&| |
| ft_max_word_len | 84 |
| ft_min_word_len | 4 |
| ft_query_expansion_limit | 20 |
| ft_stopword_file | (built-in) |
| general_log | OFF |
| general_log_file | /var/lib/mysql/VM-8-9-ubuntu.log |
| generated_random_password_length | 20 |
| global_connection_memory_limit | 18446744073709551615 |
| global_connection_memory_tracking | OFF |
| group_concat_max_len | 1024 |
| group_replication_consistency | EVENTUAL |
| gtid_executed | |
| gtid_executed_compression_period | 0 |
| gtid_mode | OFF |
| gtid_next | AUTOMATIC |
| gtid_owned | |
| gtid_purged | |
| have_compress | YES |
| have_dynamic_loading | YES |
| have_geometry | YES |
| have_openssl | YES |
| have_profiling | YES |
| have_query_cache | NO |
| have_rtree_keys | YES |
| have_ssl | YES |
| have_statement_timeout | YES |
| have_symlink | DISABLED |
| histogram_generation_max_mem_size | 20000000 |
| host_cache_size | 279 |
| hostname | VM-8-9-ubuntu |
| identity | 33479 |
| immediate_server_version | 999999 |
| information_schema_stats_expiry | 86400 |
| init_connect | |
| init_file | |
| init_replica | |
| init_slave | |
| innodb_adaptive_flushing | ON |
| innodb_adaptive_flushing_lwm | 10 |
| innodb_adaptive_hash_index | ON |
| innodb_adaptive_hash_index_parts | 8 |
| innodb_adaptive_max_sleep_delay | 150000 |
| innodb_api_bk_commit_interval | 5 |
| innodb_api_disable_rowlock | OFF |
| innodb_api_enable_binlog | OFF |
| innodb_api_enable_mdl | OFF |
| innodb_api_trx_level | 0 |
| innodb_autoextend_increment | 64 |
| innodb_autoinc_lock_mode | 2 |
| innodb_buffer_pool_chunk_size | 134217728 |
| innodb_buffer_pool_dump_at_shutdown | ON |
| innodb_buffer_pool_dump_now | OFF |
| innodb_buffer_pool_dump_pct | 25 |
| innodb_buffer_pool_filename | ib_buffer_pool |
| innodb_buffer_pool_in_core_file | ON |
| innodb_buffer_pool_instances | 1 |
| innodb_buffer_pool_load_abort | OFF |
| innodb_buffer_pool_load_at_startup | ON |
| innodb_buffer_pool_load_now | OFF |
| innodb_buffer_pool_size | 134217728 |
| innodb_change_buffer_max_size | 25 |
| innodb_change_buffering | all |
| innodb_checksum_algorithm | crc32 |
| innodb_cmp_per_index_enabled | OFF |
| innodb_commit_concurrency | 0 |
| innodb_compression_failure_threshold_pct | 5 |
| innodb_compression_level | 6 |
| innodb_compression_pad_pct_max | 50 |
| innodb_concurrency_tickets | 5000 |
| innodb_data_file_path | ibdata1:12M:autoextend |
| innodb_data_home_dir | |
| innodb_ddl_buffer_size | 1048576 |
| innodb_ddl_threads | 4 |
| innodb_deadlock_detect | ON |
| innodb_dedicated_server | OFF |
| innodb_default_row_format | dynamic |
| innodb_directories | |
| innodb_disable_sort_file_cache | OFF |
| innodb_doublewrite | ON |
| innodb_doublewrite_batch_size | 0 |
| innodb_doublewrite_dir | |
| innodb_doublewrite_files | 2 |
| innodb_doublewrite_pages | 4 |
| innodb_extend_and_initialize | ON |
| innodb_fast_shutdown | 1 |
| innodb_file_per_table | ON |
| innodb_fill_factor | 100 |
| innodb_flush_log_at_timeout | 1 |
| innodb_flush_log_at_trx_commit | 1 |
| innodb_flush_method | fsync |
| innodb_flush_neighbors | 0 |
| innodb_flush_sync | ON |
| innodb_flushing_avg_loops | 30 |
| innodb_force_load_corrupted | OFF |
| innodb_force_recovery | 0 |
| innodb_fsync_threshold | 0 |
| innodb_ft_aux_table | |
| innodb_ft_cache_size | 8000000 |
| innodb_ft_enable_diag_print | OFF |
| innodb_ft_enable_stopword | ON |
| innodb_ft_max_token_size | 84 |
| innodb_ft_min_token_size | 3 |
| innodb_ft_num_word_optimize | 2000 |
| innodb_ft_result_cache_limit | 2000000000 |
| innodb_ft_server_stopword_table | |
| innodb_ft_sort_pll_degree | 2 |
| innodb_ft_total_cache_size | 640000000 |
| innodb_ft_user_stopword_table | |
| innodb_idle_flush_pct | 100 |
| innodb_io_capacity | 200 |
| innodb_io_capacity_max | 2000 |
| innodb_lock_wait_timeout | 50 |
| innodb_log_buffer_size | 16777216 |
| innodb_log_checksums | ON |
| innodb_log_compressed_pages | ON |
| innodb_log_file_size | 50331648 |
| innodb_log_files_in_group | 2 |
| innodb_log_group_home_dir | ./ |
| innodb_log_spin_cpu_abs_lwm | 80 |
| innodb_log_spin_cpu_pct_hwm | 50 |
| innodb_log_wait_for_flush_spin_hwm | 400 |
| innodb_log_write_ahead_size | 8192 |
| innodb_log_writer_threads | ON |
| innodb_lru_scan_depth | 1024 |
| innodb_max_dirty_pages_pct | 90.000000 |
| innodb_max_dirty_pages_pct_lwm | 10.000000 |
| innodb_max_purge_lag | 0 |
| innodb_max_purge_lag_delay | 0 |
| innodb_max_undo_log_size | 1073741824 |
| innodb_monitor_disable | |
| innodb_monitor_enable | |
| innodb_monitor_reset | |
| innodb_monitor_reset_all | |
| innodb_numa_interleave | OFF |
| innodb_old_blocks_pct | 37 |
| innodb_old_blocks_time | 1000 |
| innodb_online_alter_log_max_size | 134217728 |
| innodb_open_files | 4000 |
| innodb_optimize_fulltext_only | OFF |
| innodb_page_cleaners | 1 |
| innodb_page_size | 16384 |
| innodb_parallel_read_threads | 4 |
| innodb_print_all_deadlocks | OFF |
| innodb_print_ddl_logs | OFF |
| innodb_purge_batch_size | 300 |
| innodb_purge_rseg_truncate_frequency | 128 |
| innodb_purge_threads | 4 |
| innodb_random_read_ahead | OFF |
| innodb_read_ahead_threshold | 56 |
| innodb_read_io_threads | 4 |
| innodb_read_only | OFF |
| innodb_redo_log_archive_dirs | |
| innodb_redo_log_capacity | 104857600 |
| innodb_redo_log_encrypt | OFF |
| innodb_replication_delay | 0 |
| innodb_rollback_on_timeout | OFF |
| innodb_rollback_segments | 128 |
| innodb_segment_reserve_factor | 12.500000 |
| innodb_sort_buffer_size | 1048576 |
| innodb_spin_wait_delay | 6 |
| innodb_spin_wait_pause_multiplier | 50 |
| innodb_stats_auto_recalc | ON |
| innodb_stats_include_delete_marked | OFF |
| innodb_stats_method | nulls_equal |
| innodb_stats_on_metadata | OFF |
| innodb_stats_persistent | ON |
| innodb_stats_persistent_sample_pages | 20 |
| innodb_stats_transient_sample_pages | 8 |
| innodb_status_output | OFF |
| innodb_status_output_locks | OFF |
| innodb_strict_mode | ON |
| innodb_sync_array_size | 1 |
| innodb_sync_spin_loops | 30 |
| innodb_table_locks | ON |
| innodb_temp_data_file_path | ibtmp1:12M:autoextend |
| innodb_temp_tablespaces_dir | ./#innodb_temp/ |
| innodb_thread_concurrency | 0 |
| innodb_thread_sleep_delay | 10000 |
| innodb_tmpdir | |
| innodb_undo_directory | ./ |
| innodb_undo_log_encrypt | OFF |
| innodb_undo_log_truncate | ON |
| innodb_undo_tablespaces | 2 |
| innodb_use_fdatasync | OFF |
| innodb_use_native_aio | ON |
| innodb_validate_tablespace_paths | ON |
| innodb_version | 8.0.40 |
| innodb_write_io_threads | 4 |
| insert_id | 0 |
| interactive_timeout | 28800 |
| internal_tmp_mem_storage_engine | TempTable |
| join_buffer_size | 262144 |
| keep_files_on_create | OFF |
| key_buffer_size | 16777216 |
| key_cache_age_threshold | 300 |
| key_cache_block_size | 1024 |
| key_cache_division_limit | 100 |
| keyring_operations | ON |
| large_files_support | ON |
| large_page_size | 0 |
| large_pages | OFF |
| last_insert_id | 33479 |
| lc_messages | en_US |
| lc_messages_dir | /usr/share/mysql/ |
| lc_time_names | en_US |
| license | GPL |
| local_infile | OFF |
| lock_wait_timeout | 31536000 |
| locked_in_memory | OFF |
| log_bin | ON |
| log_bin_basename | /var/lib/mysql/binlog |
| log_bin_index | /var/lib/mysql/binlog.index |
| log_bin_trust_function_creators | OFF |
| log_bin_use_v1_row_events | OFF |
| log_error | /var/log/mysql/error.log |
| log_error_services | log_filter_internal; log_sink_internal |
| log_error_suppression_list | |
| log_error_verbosity | 2 |
| log_output | FILE |
| log_queries_not_using_indexes | OFF |
| log_raw | OFF |
| log_replica_updates | ON |
| log_slave_updates | ON |
| log_slow_admin_statements | OFF |
| log_slow_extra | OFF |
| log_slow_replica_statements | OFF |
| log_slow_slave_statements | OFF |
| log_statements_unsafe_for_binlog | ON |
| log_throttle_queries_not_using_indexes | 0 |
| log_timestamps | UTC |
| long_query_time | 10.000000 |
| low_priority_updates | OFF |
| lower_case_file_system | OFF |
| lower_case_table_names | 0 |
| mandatory_roles | |
| master_info_repository | TABLE |
| master_verify_checksum | OFF |
| max_allowed_packet | 67108864 |
| max_binlog_cache_size | 18446744073709547520 |
| max_binlog_size | 104857600 |
| max_binlog_stmt_cache_size | 18446744073709547520 |
| max_connect_errors | 100 |
| max_connections | 151 |
| max_delayed_threads | 20 |
| max_digest_length | 1024 |
| max_error_count | 1024 |
| max_execution_time | 0 |
| max_heap_table_size | 16777216 |
| max_insert_delayed_threads | 20 |
| max_join_size | 18446744073709551615 |
| max_length_for_sort_data | 4096 |
| max_points_in_geometry | 65536 |
| max_prepared_stmt_count | 16382 |
| max_relay_log_size | 0 |
| max_seeks_for_key | 18446744073709551615 |
| max_sort_length | 1024 |
| max_sp_recursion_depth | 0 |
| max_user_connections | 0 |
| max_write_lock_count | 18446744073709551615 |
| min_examined_row_limit | 0 |
| myisam_data_pointer_size | 6 |
| myisam_max_sort_file_size | 9223372036853727232 |
| myisam_mmap_size | 18446744073709551615 |
| myisam_recover_options | BACKUP |
| myisam_sort_buffer_size | 8388608 |
| myisam_stats_method | nulls_unequal |
| myisam_use_mmap | OFF |
| mysql_native_password_proxy_users | OFF |
| mysqlx_bind_address | 127.0.0.1 |
| mysqlx_compression_algorithms | DEFLATE_STREAM,LZ4_MESSAGE,ZSTD_STREAM |
| mysqlx_connect_timeout | 30 |
| mysqlx_deflate_default_compression_level | 3 |
| mysqlx_deflate_max_client_compression_level | 5 |
| mysqlx_document_id_unique_prefix | 0 |
| mysqlx_enable_hello_notice | ON |
| mysqlx_idle_worker_thread_timeout | 60 |
| mysqlx_interactive_timeout | 28800 |
| mysqlx_lz4_default_compression_level | 2 |
| mysqlx_lz4_max_client_compression_level | 8 |
| mysqlx_max_allowed_packet | 67108864 |
| mysqlx_max_connections | 100 |
| mysqlx_min_worker_threads | 2 |
| mysqlx_port | 33060 |
| mysqlx_port_open_timeout | 0 |
| mysqlx_read_timeout | 30 |
| mysqlx_socket | /var/run/mysqld/mysqlx.sock |
| mysqlx_ssl_ca | |
| mysqlx_ssl_capath | |
| mysqlx_ssl_cert | |
| mysqlx_ssl_cipher | |
| mysqlx_ssl_crl | |
| mysqlx_ssl_crlpath | |
| mysqlx_ssl_key | |
| mysqlx_wait_timeout | 28800 |
| mysqlx_write_timeout | 60 |
| mysqlx_zstd_default_compression_level | 3 |
| mysqlx_zstd_max_client_compression_level | 11 |
| net_buffer_length | 16384 |
| net_read_timeout | 30 |
| net_retry_count | 10 |
| net_write_timeout | 60 |
| new | OFF |
| ngram_token_size | 2 |
| offline_mode | OFF |
| old | OFF |
| old_alter_table | OFF |
| open_files_limit | 10000 |
| optimizer_max_subgraph_pairs | 100000 |
| optimizer_prune_level | 1 |
| optimizer_search_depth | 62 |
| optimizer_switch | index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,engine_condition_pushdown=on,index_condition_pushdown=on,mrr=on,mrr_cost_based=on,block_nested_loop=on,batched_key_access=off,materialization=on,semijoin=on,loosescan=on,firstmatch=on,duplicateweedout=on,subquery_materialization_cost_based=on,use_index_extensions=on,condition_fanout_filter=on,derived_merge=on,use_invisible_indexes=off,skip_scan=on,hash_join=on,subquery_to_derived=off,prefer_ordering_index=on,hypergraph_optimizer=off,derived_condition_pushdown=on |
| optimizer_trace | enabled=off,one_line=off |
| optimizer_trace_features | greedy_search=on,range_optimizer=on,dynamic_range=on,repeated_subselect=on |
| optimizer_trace_limit | 1 |
| optimizer_trace_max_mem_size | 1048576 |
| optimizer_trace_offset | -1 |
| original_commit_timestamp | 36028797018963968 |
| original_server_version | 999999 |
| parser_max_mem_size | 18446744073709551615 |
| partial_revokes | OFF |
| password_history | 0 |
| password_require_current | OFF |
| password_reuse_interval | 0 |
| performance_schema | ON |
| performance_schema_accounts_size | -1 |
| performance_schema_digests_size | 10000 |
| performance_schema_error_size | 5313 |
| performance_schema_events_stages_history_long_size | 10000 |
| performance_schema_events_stages_history_size | 10 |
| performance_schema_events_statements_history_long_size | 10000 |
| performance_schema_events_statements_history_size | 10 |
| performance_schema_events_transactions_history_long_size | 10000 |
| performance_schema_events_transactions_history_size | 10 |
| performance_schema_events_waits_history_long_size | 10000 |
| performance_schema_events_waits_history_size | 10 |
| performance_schema_hosts_size | -1 |
| performance_schema_max_cond_classes | 150 |
| performance_schema_max_cond_instances | -1 |
| performance_schema_max_digest_length | 1024 |
| performance_schema_max_digest_sample_age | 60 |
| performance_schema_max_file_classes | 80 |
| performance_schema_max_file_handles | 32768 |
| performance_schema_max_file_instances | -1 |
| performance_schema_max_index_stat | -1 |
| performance_schema_max_memory_classes | 450 |
| performance_schema_max_metadata_locks | -1 |
| performance_schema_max_mutex_classes | 350 |
| performance_schema_max_mutex_instances | -1 |
| performance_schema_max_prepared_statements_instances | -1 |
| performance_schema_max_program_instances | -1 |
| performance_schema_max_rwlock_classes | 60 |
| performance_schema_max_rwlock_instances | -1 |
| performance_schema_max_socket_classes | 10 |
| performance_schema_max_socket_instances | -1 |
| performance_schema_max_sql_text_length | 1024 |
| performance_schema_max_stage_classes | 175 |
| performance_schema_max_statement_classes | 219 |
| performance_schema_max_statement_stack | 10 |
| performance_schema_max_table_handles | -1 |
| performance_schema_max_table_instances | -1 |
| performance_schema_max_table_lock_stat | -1 |
| performance_schema_max_thread_classes | 100 |
| performance_schema_max_thread_instances | -1 |
| performance_schema_session_connect_attrs_size | 512 |
| performance_schema_setup_actors_size | -1 |
| performance_schema_setup_objects_size | -1 |
| performance_schema_show_processlist | OFF |
| performance_schema_users_size | -1 |
| persist_only_admin_x509_subject | |
| persist_sensitive_variables_in_plaintext | ON |
| persisted_globals_load | ON |
| pid_file | /var/lib/mysql/VM-8-9-ubuntu.pid |
| plugin_dir | /usr/lib/mysql/plugin/ |
| port | 3306 |
| preload_buffer_size | 32768 |
| print_identified_with_as_hex | OFF |
| profiling | OFF |
| profiling_history_size | 15 |
| protocol_compression_algorithms | zlib,zstd,uncompressed |
| protocol_version | 10 |
| proxy_user | |
| pseudo_replica_mode | OFF |
| pseudo_slave_mode | OFF |
| pseudo_thread_id | 15145 |
| query_alloc_block_size | 8192 |
| query_prealloc_size | 8192 |
| rand_seed1 | 0 |
| rand_seed2 | 0 |
| range_alloc_block_size | 4096 |
| range_optimizer_max_mem_size | 8388608 |
| rbr_exec_mode | STRICT |
| read_buffer_size | 131072 |
| read_only | OFF |
| read_rnd_buffer_size | 262144 |
| regexp_stack_limit | 8000000 |
| regexp_time_limit | 32 |
| relay_log | VM-8-9-ubuntu-relay-bin |
| relay_log_basename | /var/lib/mysql/VM-8-9-ubuntu-relay-bin |
| relay_log_index | /var/lib/mysql/VM-8-9-ubuntu-relay-bin.index |
| relay_log_info_file | relay-log.info |
| relay_log_info_repository | TABLE |
| relay_log_purge | ON |
| relay_log_recovery | OFF |
| relay_log_space_limit | 0 |
| replica_allow_batching | ON |
| replica_checkpoint_group | 512 |
| replica_checkpoint_period | 300 |
| replica_compressed_protocol | OFF |
| replica_exec_mode | STRICT |
| replica_load_tmpdir | /tmp |
| replica_max_allowed_packet | 1073741824 |
| replica_net_timeout | 60 |
| replica_parallel_type | LOGICAL_CLOCK |
| replica_parallel_workers | 4 |
| replica_pending_jobs_size_max | 134217728 |
| replica_preserve_commit_order | ON |
| replica_skip_errors | OFF |
| replica_sql_verify_checksum | ON |
| replica_transaction_retries | 10 |
| replica_type_conversions | |
| replication_optimize_for_static_plugin_config | OFF |
| replication_sender_observe_commit_only | OFF |
| report_host | |
| report_password | |
| report_port | 3306 |
| report_user | |
| require_row_format | OFF |
| require_secure_transport | OFF |
| resultset_metadata | FULL |
| rpl_read_size | 8192 |
| rpl_stop_replica_timeout | 31536000 |
| rpl_stop_slave_timeout | 31536000 |
| schema_definition_cache | 256 |
| secondary_engine_cost_threshold | 100000.000000 |
| secure_file_priv | /var/lib/mysql-files/ |
| select_into_buffer_size | 131072 |
| select_into_disk_sync | OFF |
| select_into_disk_sync_delay | 0 |
| server_id | 1 |
| server_id_bits | 32 |
| server_uuid | 11b6c132-cbf0-11ef-b306-525400ec1865 |
| session_track_gtids | OFF |
| session_track_schema | ON |
| session_track_state_change | OFF |
| session_track_system_variables | time_zone,autocommit,character_set_client,character_set_results,character_set_connection |
| session_track_transaction_info | OFF |
| sha256_password_auto_generate_rsa_keys | ON |
| sha256_password_private_key_path | private_key.pem |
| sha256_password_proxy_users | OFF |
| sha256_password_public_key_path | public_key.pem |
| show_create_table_skip_secondary_engine | OFF |
| show_create_table_verbosity | OFF |
| show_gipk_in_create_table_and_information_schema | ON |
| show_old_temporals | OFF |
| skip_external_locking | ON |
| skip_name_resolve | OFF |
| skip_networking | OFF |
| skip_replica_start | OFF |
| skip_show_database | OFF |
| skip_slave_start | OFF |
| slave_allow_batching | ON |
| slave_checkpoint_group | 512 |
| slave_checkpoint_period | 300 |
| slave_compressed_protocol | OFF |
| slave_exec_mode | STRICT |
| slave_load_tmpdir | /tmp |
| slave_max_allowed_packet | 1073741824 |
| slave_net_timeout | 60 |
| slave_parallel_type | LOGICAL_CLOCK |
| slave_parallel_workers | 4 |
| slave_pending_jobs_size_max | 134217728 |
| slave_preserve_commit_order | ON |
| slave_rows_search_algorithms | INDEX_SCAN,HASH_SCAN |
| slave_skip_errors | OFF |
| slave_sql_verify_checksum | ON |
| slave_transaction_retries | 10 |
| slave_type_conversions | |
| slow_launch_time | 2 |
| slow_query_log | OFF |
| slow_query_log_file | /var/lib/mysql/VM-8-9-ubuntu-slow.log |
| socket | /var/run/mysqld/mysqld.sock |
| sort_buffer_size | 262144 |
| source_verify_checksum | OFF |
| sql_auto_is_null | OFF |
| sql_big_selects | ON |
| sql_buffer_result | OFF |
| sql_generate_invisible_primary_key | OFF |
| sql_log_bin | ON |
| sql_log_off | OFF |
| sql_mode | ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION |
| sql_notes | ON |
| sql_quote_show_create | ON |
| sql_replica_skip_counter | 0 |
| sql_require_primary_key | OFF |
| sql_safe_updates | OFF |
| sql_select_limit | 18446744073709551615 |
| sql_slave_skip_counter | 0 |
| sql_warnings | OFF |
| ssl_ca | ca.pem |
| ssl_capath | |
| ssl_cert | server-cert.pem |
| ssl_cipher | |
| ssl_crl | |
| ssl_crlpath | |
| ssl_fips_mode | OFF |
| ssl_key | server-key.pem |
| ssl_session_cache_mode | ON |
| ssl_session_cache_timeout | 300 |
| statement_id | 915604 |
| stored_program_cache | 256 |
| stored_program_definition_cache | 256 |
| super_read_only | OFF |
| sync_binlog | 1 |
| sync_master_info | 10000 |
| sync_relay_log | 10000 |
| sync_relay_log_info | 10000 |
| sync_source_info | 10000 |
| system_time_zone | CST |
| table_definition_cache | 2000 |
| table_encryption_privilege_check | OFF |
| table_open_cache | 4000 |
| table_open_cache_instances | 16 |
| tablespace_definition_cache | 256 |
| temptable_max_mmap | 1073741824 |
| temptable_max_ram | 1073741824 |
| temptable_use_mmap | ON |
| terminology_use_previous | NONE |
| thread_cache_size | 9 |
| thread_handling | one-thread-per-connection |
| thread_stack | 1048576 |
| time_zone | SYSTEM |
| timestamp | 1770161822.175603 |
| tls_ciphersuites | |
| tls_version | TLSv1.2,TLSv1.3 |
| tmp_table_size | 16777216 |
| tmpdir | /tmp |
| transaction_alloc_block_size | 8192 |
| transaction_allow_batching | OFF |
| transaction_isolation | REPEATABLE-READ |
| transaction_prealloc_size | 4096 |
| transaction_read_only | OFF |
| transaction_write_set_extraction | XXHASH64 |
| unique_checks | ON |
| updatable_views_with_limit | YES |
| use_secondary_engine | ON |
| validate_password.changed_characters_percentage | 0 |
| validate_password.check_user_name | ON |
| validate_password.dictionary_file | |
| validate_password.length | 8 |
| validate_password.mixed_case_count | 1 |
| validate_password.number_count | 1 |
| validate_password.policy | MEDIUM |
| validate_password.special_char_count | 1 |
| version | 8.0.40-0ubuntu0.24.04.1 |
| version_comment | (Ubuntu) |
| version_compile_machine | x86_64 |
| version_compile_os | Linux |
| version_compile_zlib | 1.3 |
| wait_timeout | 28800 |
| warning_count | 0 |
| windowing_use_high_precision | ON |
| xa_detach_on_prepare | ON |
MySql字段类型
bigint
blob
char
date
datetime
decimal
double
enum
float
int
longblob
longtext
mediumint
mediumtext
set
smallint
text
time
timestamp
tinyint
varbinary
varchar
Mysql安装
下载地址:mysql下载
Windows安装
安装文档:Windows: mysql5.7安装文档 解压:mysql-5.7.44-winx64.zip 到文件:D:\package\phpstudy_pro\Extensions\MySQL5.7.44 初始化:参考文档 D:\package\phpstudy_pro\Extensions\MySQL5.7.44\bin>mysqld --initialize-insecure 启动: D:\package\phpstudy_pro\Extensions\MySQL5.7.44\bin>mysqld -P3306 --log-error=D:\package\phpstudy_pro\Extensions\MySQL5.7.44\mysqld.log D:\package\phpstudy_pro\Extensions\MySQL5.7.44\bin>mysql -uroot -p mysql>USE mysql; mysql>set password=password("123456"); mysql>create database db_2024 default charset 'utf8mb4'; mysql>grant all privileges on db_2024.* to 'cj'@'%' identified by '123456'; mysql>flush privileges;
Linux安装
#安装最新版
$> yum list mysql-server
$> yum install -y mysql-server
#官方安装
$> groupadd mysql
$> useradd -r -g mysql -s /bin/false mysql
$> cd /usr/local
$> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
$> ln -s full-path-to-mysql-VERSION-OS mysql
$> cd mysql
$> mkdir mysql-files
$> chown mysql:mysql mysql-files
$> chmod 750 mysql-files
$> bin/mysqld --initialize --user=mysql
$> bin/mysql_ssl_rsa_setup
$> bin/mysqld_safe --user=mysql &
# Next command is optional
$> cp support-files/mysql.server /etc/init.d/mysql.server
#配置文件
$> find / -name my.cnf
$> find / -name mysqld.service
$> systemctl enable mysqld
$> systemctl start mysqld
$> mysql -uroot -p
$> netstat -ano| grep 3306