Mysql

MySQL - 設計+優化問題

  • November 20, 2017

我覺得我的數據庫設計可能犯了一個錯誤。

目前我有 73182 張桌子,4 天前我有 72236 張桌子,而就在 2 個月前,我們只有大約 20k 張桌子 - 所以我們的增長飆升。

本質上,每個客戶都有自己的 CRM 表集,這些表幾乎都非常相似,只是它只保存他們獨有的數據。通過一些重構,我可以非常輕鬆地將數據複製到具有大量行的幾個表中(這意味著我可能會刪除近 71000 個表)。但是,我想對此提出想法和意見,因為 CRM 中發生了很多數據和操作,所以我認為查找會更快,因為使用多個鍵的需要更少。

我在Google“雲”上使用 MySQL。我現在的伺服器是 8vCPU@52GB 記憶體,下一層是 16vCPU@104GB 記憶體。我正在折騰是否將每個表的文件 InnoDB 文件設置為 = NO,目前它是 = YES。我純粹使用 InnoDB。

innodb_read_io_threads
innodb_write_io_threads

都設置為 4(預設),我無法更改它們 - Google支持代表通知我,如果我能給出足夠清楚的理由為什麼我需要更改它;他們會允許的。理想情況下,我希望它達到 16 左右。我還沒有在 InnoDB 狀態中看到任何掛起的讀/寫,我會偶爾檢查一下。

這是我傾倒的所有統計數據(對不起,很長的文章)

這是我目前的變數

allow_client_hostname_forwarding=ON
allow_repl_client_for_replication_config=OFF
auto_generate_certs=ON
auto_increment_increment=1
auto_increment_offset=1
autocommit=ON
automatic_sp_privileges=ON
avoid_temporal_upgrade=OFF
back_log=850
basedir=/mysql/
big_tables=OFF
bind_address=*
binlog_cache_size=32768
binlog_checksum=CRC32
binlog_direct_non_transactional_updates=OFF
binlog_error_action=ABORT_SERVER
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_row_image=FULL
binlog_rows_query_log_events=OFF
binlog_stmt_cache_size=32768
block_encryption_mode=aes-128-ecb
block_slave_sql_access=0
block_user_access=33280
bulk_insert_buffer_size=8388608
character_set_client=utf8
character_set_connection=utf8
character_set_database=utf8
character_set_filesystem=binary
character_set_results=utf8
character_set_server=utf8
character_set_system=utf8
character_sets_dir=/usr/share/mysql/charsets/
check_proxy_users=OFF
collation_connection=utf8_general_ci
collation_database=utf8_general_ci
collation_server=utf8_general_ci
completion_type=NO_CHAIN
concurrent_insert=AUTO
connect_timeout=10
core_file=OFF
datadir=/mysql/datadir/
date_format=%Y-%m-%d
datetime_format=%Y-%m-%d %H:%i:%s
default_authentication_plugin=mysql_native_password
default_password_lifetime=0
default_storage_engine=InnoDB
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=ON
enforce_storage_engine=
eq_range_index_dive_limit=200
error_count=0
event_scheduler=OFF
expire_logs_days=0
explicit_defaults_for_timestamp=OFF
external_user=
flush=OFF
flush_time=0
force_ssl_for_tcp=NONE
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=/mysql/logs/general.log
group_concat_max_len=1024
gtid_executed_compression_period=1000
gtid_mode=ON
gtid_next=AUTOMATIC
gtid_owned=
gtid_purged=5fd39415-ca37-11e6-9729-42010a800034:1-387725664
have_compress=YES
have_crypt=YES
have_dynamic_loading=YES
have_geometry=YES
have_openssl=YES
have_profiling=YES
have_query_cache=YES
have_rtree_keys=YES
have_ssl=YES
have_statement_timeout=YES
have_symlink=YES
host_cache_size=803
hostname=localhost
identity=0
ignore_builtin_innodb=OFF
ignore_db_dirs=
init_connect=
init_file=
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=1
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_instances=8
innodb_buffer_pool_load_abort=OFF
innodb_buffer_pool_load_at_startup=ON
innodb_buffer_pool_load_now=OFF
innodb_buffer_pool_size=40802189312
innodb_change_buffer_max_size=25
innodb_change_buffering=all
innodb_checksum_algorithm=crc32
innodb_checksums=ON
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_default_row_format=dynamic
innodb_disable_sort_file_cache=OFF
innodb_doublewrite=ON
innodb_fast_shutdown=1
innodb_file_format=Barracuda
innodb_file_format_check=ON
innodb_file_format_max=Barracuda
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=O_DIRECT
innodb_flush_neighbors=2
innodb_flush_sync=ON
innodb_flushing_avg_loops=5
innodb_force_load_corrupted=OFF
innodb_force_recovery=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_io_capacity=5000
innodb_io_capacity_max=10000
innodb_large_prefix=ON
innodb_lock_wait_timeout=50
innodb_locks_unsafe_for_binlog=OFF
innodb_log_buffer_size=16777216
innodb_log_checksums=ON
innodb_log_compressed_pages=ON
innodb_log_file_size=536870912
innodb_log_files_in_group=2
innodb_log_group_home_dir=./
innodb_log_write_ahead_size=8192
innodb_lru_scan_depth=2048
innodb_max_dirty_pages_pct=75.000000
innodb_max_dirty_pages_pct_lwm=0.000000
innodb_max_purge_lag=0
innodb_max_purge_lag_delay=0
innodb_max_undo_log_size=1073741824
innodb_monitor_disable=
innodb_monitor_enable=all
innodb_monitor_reset=
innodb_monitor_reset_all=
innodb_old_blocks_pct=37
innodb_old_blocks_time=1000
innodb_online_alter_log_max_size=134217728
innodb_open_files=2000
innodb_optimize_fulltext_only=OFF
innodb_page_cleaners=8
innodb_page_size=16384
innodb_print_all_deadlocks=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_replication_delay=0
innodb_rollback_on_timeout=OFF
innodb_rollback_segments=128
innodb_sort_buffer_size=1048576
innodb_spin_wait_delay=6
innodb_stats_auto_recalc=ON
innodb_stats_method=nulls_equal
innodb_stats_on_metadata=OFF
innodb_stats_persistent=ON
innodb_stats_persistent_sample_pages=20
innodb_stats_sample_pages=8
innodb_stats_transient_sample_pages=8
innodb_status_output=OFF
innodb_status_output_locks=OFF
innodb_strict_mode=ON
innodb_support_xa=ON
innodb_sync_array_size=1
innodb_sync_spin_loops=30
innodb_table_locks=ON
innodb_temp_data_file_path=ibtmp1:12M:autoextend
innodb_thread_concurrency=0
innodb_thread_sleep_delay=10000
innodb_tmpdir=
innodb_undo_directory=./
innodb_undo_log_truncate=OFF
innodb_undo_logs=128
innodb_undo_tablespaces=0
innodb_use_native_aio=ON
innodb_version=5.7.14
innodb_write_io_threads=4
insert_id=0
interactive_timeout=28800
internal_tmp_disk_storage_engine=InnoDB
join_buffer_size=262144
keep_files_on_create=OFF
key_buffer_size=8388608
key_cache_age_threshold=300
key_cache_block_size=1024
key_cache_division_limit=100
large_files_support=ON
large_page_size=0
large_pages=OFF
last_insert_id=0
lc_messages=en_US
lc_messages_dir=/usr/share/mysql/
lc_time_names=en_US
license=GPL
local_infile=ON
lock_wait_timeout=31536000
locked_in_memory=OFF
log_bin=ON
log_bin_basename=/mysql/binlog/mysql-bin
log_bin_index=/mysql/binlog/mysql-bin.index
log_bin_trust_function_creators=OFF
log_bin_use_v1_row_events=OFF
log_builtin_as_identified_by_password=OFF
log_error=stderr
log_error_verbosity=3
log_n_first_received_events=4
log_n_first_sent_events=4
log_output=TABLE
log_queries_not_using_indexes=OFF
log_slave_updates=ON
log_slow_admin_statements=OFF
log_slow_slave_statements=OFF
log_statements_unsafe_for_binlog=ON
log_syslog=OFF
log_syslog_facility=daemon
log_syslog_include_pid=ON
log_syslog_tag=
log_throttle_queries_not_using_indexes=0
log_timestamps=UTC
log_warnings=2
long_query_time=2.000000
low_priority_updates=OFF
lower_case_file_system=OFF
lower_case_table_names=0
master_info_repository=TABLE
master_verify_checksum=OFF
max_allowed_packet=268435456
max_binlog_cache_size=18446744073709547520
max_binlog_size=104857600
max_binlog_stmt_cache_size=18446744073709547520
max_connect_errors=100
max_connections=4000
max_delayed_threads=20
max_digest_length=1024
max_error_count=64
max_execution_time=0
max_heap_table_size=16777216
max_insert_delayed_threads=20
max_join_size=18446744073709551615
max_length_for_sort_data=1024
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_tmp_tables=32
max_user_connections=0
max_write_lock_count=18446744073709551615
metadata_locks_cache_size=1024
metadata_locks_hash_instances=8
min_examined_row_limit=0
multi_range_count=256
mysql_native_password_proxy_users=OFF
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
old_passwords=0
open_files_limit=1048576
optimizer_prune_level=1
optimizer_search_depth=62
optimizer_trace=enabled=off,one_line=off
optimizer_trace_limit=1
optimizer_trace_max_mem_size=16384
optimizer_trace_offset=-1
parser_max_mem_size=18446744073709551615
performance_schema=OFF
performance_schema_accounts_size=0
performance_schema_digests_size=0
performance_schema_events_stages_history_long_size=0
performance_schema_events_stages_history_size=0
performance_schema_events_statements_history_long_size=0
performance_schema_events_statements_history_size=0
performance_schema_events_transactions_history_long_size=0
performance_schema_events_transactions_history_size=0
performance_schema_events_waits_history_long_size=0
performance_schema_events_waits_history_size=0
performance_schema_hosts_size=0
performance_schema_max_cond_classes=0
performance_schema_max_cond_instances=0
performance_schema_max_digest_length=0
performance_schema_max_file_classes=0
performance_schema_max_file_handles=0
performance_schema_max_file_instances=0
performance_schema_max_index_stat=0
performance_schema_max_memory_classes=0
performance_schema_max_metadata_locks=0
performance_schema_max_mutex_classes=0
performance_schema_max_mutex_instances=0
performance_schema_max_prepared_statements_instances=0
performance_schema_max_program_instances=0
performance_schema_max_rwlock_classes=0
performance_schema_max_rwlock_instances=0
performance_schema_max_socket_classes=0
performance_schema_max_socket_instances=0
performance_schema_max_sql_text_length=0
performance_schema_max_stage_classes=0
performance_schema_max_statement_classes=0
performance_schema_max_statement_stack=0
performance_schema_max_table_handles=0
performance_schema_max_table_instances=0
performance_schema_max_table_lock_stat=0
performance_schema_max_thread_classes=0
performance_schema_max_thread_instances=0
performance_schema_session_connect_attrs_size=0
performance_schema_setup_actors_size=0
performance_schema_setup_objects_size=0
performance_schema_users_size=0
pid_file=/mysql/mysql.pid
plugin_dir=/usr/lib/mysql/plugin/
port=3306
preload_buffer_size=32768
profiling=OFF
profiling_history_size=15
protocol_version=10
proxy_user=
pseudo_slave_mode=OFF
pseudo_thread_id=162
query_alloc_block_size=8192
query_cache_limit=1048576
query_cache_min_res_unit=4096
query_cache_size=1048576
query_cache_type=OFF
query_cache_wlock_invalidate=OFF
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
relay_log=/mysql/relaylog/relay-log
relay_log_basename=/mysql/relaylog/relay-log
relay_log_index=/mysql/relaylog/relay-log.index
relay_log_info_file=relay-log.info
relay_log_info_repository=TABLE
relay_log_purge=ON
relay_log_recovery=ON
relay_log_space_limit=0
report_host=
report_password=
report_port=3306
report_user=
require_secure_transport=OFF
require_super_for_system_schema_ddl=information_schema,mysql,performance_schema,sys
require_super_for_system_table_writes=event,func,plugin,proc,heartbeat
reserved_super_connections=20
rpl_semi_sync_master_async_notify_sleep_interval=1000000
rpl_semi_sync_master_async_notify_socket=/semisync/semisync.sock
rpl_semi_sync_master_async_notify_timeout=5000000
rpl_semi_sync_master_do_async_notify=ON
rpl_semi_sync_master_enabled=ON
rpl_semi_sync_master_slave_lag_heartbeat_frequency_us=500000
rpl_semi_sync_master_timeout=3000
rpl_semi_sync_master_trace_level=32
rpl_semi_sync_master_wait_for_slave_count=1
rpl_semi_sync_master_wait_no_slave=ON
rpl_semi_sync_master_wait_point=AFTER_SYNC
rpl_semi_sync_slave_enabled=OFF
rpl_semi_sync_slave_lag_enabled=OFF
rpl_semi_sync_slave_trace_level=32
rpl_stop_slave_timeout=31536000
secure_auth=ON
secure_file_priv=/mysql/tmp/
server_id=1655813737
server_id_bits=32
server_uuid=5fd39415-ca37-11e6-9729-42010a800034
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_compatibility_56=OFF
show_old_temporals=OFF
skip_external_locking=ON
skip_name_resolve=ON
skip_networking=OFF
skip_show_database=OFF
slave_allow_batching=OFF
slave_checkpoint_group=512
slave_checkpoint_period=300
slave_compressed_protocol=OFF
slave_exec_mode=STRICT
slave_load_tmpdir=/mysql/tmp
slave_max_allowed_packet=1073741824
slave_net_timeout=30
slave_parallel_type=DATABASE
slave_parallel_workers=0
slave_pending_jobs_size_max=16777216
slave_preserve_commit_order=OFF
slave_rows_search_algorithms=TABLE_SCAN,INDEX_SCAN
slave_skip_errors=OFF
slave_sql_verify_checksum=ON
slave_transaction_retries=10
slave_type_conversions=
slow_launch_time=2
slow_query_log=ON
slow_query_log_file=/mysql/logs/slow.log
socket=/mysql/mysql.sock
sort_buffer_size=262144
sql_auto_is_null=OFF
sql_big_selects=ON
sql_buffer_result=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_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
sql_notes=ON
sql_quote_show_create=ON
sql_safe_updates=OFF
sql_select_limit=18446744073709551615
sql_slave_skip_counter=0
sql_warnings=OFF
ssl_ca=/mysql/datadir/client_ca_cert.pem
ssl_capath=
ssl_cert=/mysql/datadir/server_cert.pem
ssl_cipher=ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA
ssl_crl=
ssl_crlpath=
ssl_key=/mysql/datadir/server_pkey.pem
stored_program_cache=256
super_read_only=OFF
sync_binlog=1
sync_frm=ON
sync_master_info=10000
sync_relay_log=10000
sync_relay_log_info=10000
system_time_zone=UTC
system_user_table=ON
table_definition_cache=1400
table_open_cache=2000
table_open_cache_instances=16
thread_cache_size=48
thread_handling=one-thread-per-connection
thread_stack=262144
time_format=%H:%i:%s
time_zone=SYSTEM
timestamp=1511213904.401692
tls_version=TLSv1,TLSv1.1,TLSv1.2
tmp_table_size=16777216
tmpdir=/mysql/tmp
transaction_alloc_block_size=8192
transaction_allow_batching=OFF
transaction_prealloc_size=4096
transaction_write_set_extraction=OFF
tx_isolation=REPEATABLE-READ
tx_read_only=OFF
unique_checks=ON
updatable_views_with_limit=YES
version=5.7.14-google-log
version_comment=(Google)
version_compile_machine=x86_64
version_compile_os=Linux
wait_timeout=28800
warning_count=0

這是我的“SHOW ENGINE INNODB STATUS”(現在是非高峰時間)

Per second averages calculated from the last 21 seconds
-----------------
BACKGROUND THREAD
-----------------
srv_master_thread loops: 454 srv_active, 0 srv_shutdown, 18 srv_idle
srv_master_thread log flush and writes: 472
----------
SEMAPHORES
----------
OS WAIT ARRAY INFO: reservation count 22416
OS WAIT ARRAY INFO: signal count 20532
RW-shared spins 0, rounds 23685, OS waits 11571
RW-excl spins 0, rounds 2629, OS waits 45
RW-sx spins 1, rounds 30, OS waits 1
Spin rounds per wait: 23685.00 RW-shared, 2629.00 RW-excl, 30.00 RW-sx
------------
TRANSACTIONS
------------
Trx id counter 923538034
Purge done for trx's n:o < 923538030 undo n:o < 0 state: running but idle
History list length 2188
LIST OF TRANSACTIONS FOR EACH SESSION:
---TRANSACTION 375459551693520, not started
0 lock struct(s), heap size 1136, 0 row lock(s)
---TRANSACTION 375459551692608, not started
0 lock struct(s), heap size 1136, 0 row lock(s)
---TRANSACTION 375459551694432, not started
0 lock struct(s), heap size 1136, 0 row lock(s)
--------
FILE I/O
--------
I/O thread 0 state: waiting for completed aio requests (insert buffer thread)
I/O thread 1 state: waiting for completed aio requests (log thread)
I/O thread 2 state: waiting for completed aio requests (read thread)
I/O thread 3 state: waiting for completed aio requests (read thread)
I/O thread 4 state: waiting for completed aio requests (read thread)
I/O thread 5 state: waiting for completed aio requests (read thread)
I/O thread 6 state: waiting for completed aio requests (write thread)
I/O thread 7 state: waiting for completed aio requests (write thread)
I/O thread 8 state: waiting for completed aio requests (write thread)
I/O thread 9 state: waiting for completed aio requests (write thread)
Pending normal aio reads: [0, 0, 0, 0] , aio writes: [0, 0, 0, 0] ,
ibuf aio reads:, log i/o's:, sync i/o's:
Pending flushes (fsync) log: 0; buffer pool: 0
132950 OS file reads, 17513 OS file writes, 11810 OS fsyncs
20.48 reads/s, 16384 avg bytes/read, 43.52 writes/s, 18.48 fsyncs/s
-------------------------------------
INSERT BUFFER AND ADAPTIVE HASH INDEX
-------------------------------------
Ibuf: size 1, free list len 81, seg size 83, 110 merges
merged operations:
insert 147, delete mark 5, delete 3
discarded operations:
insert 0, delete mark 0, delete 0
Hash table size 10092529, node heap has 119 buffer(s)
Hash table size 10092529, node heap has 41 buffer(s)
Hash table size 10092529, node heap has 29 buffer(s)
Hash table size 10092529, node heap has 1761 buffer(s)
Hash table size 10092529, node heap has 77 buffer(s)
Hash table size 10092529, node heap has 13 buffer(s)
Hash table size 10092529, node heap has 14 buffer(s)
Hash table size 10092529, node heap has 351 buffer(s)
3181.13 hash searches/s, 2702.35 non-hash searches/s
---
LOG
---
Log sequence number 231371250929
Log flushed up to   231371250912
Pages flushed up to 231371250069
Last checkpoint at  231371237449
0 pending log flushes, 0 pending chkp writes
9390 log i/o's done, 12.86 log i/o's/second
----------------------
BUFFER POOL AND MEMORY
----------------------
Total large memory allocated 41778413568
Dictionary memory allocated 15070313
Buffer pool size   2490064
Free buffers       2352880
Database pages     134779
Old database pages 49908
Modified db pages  8
Pending reads      0
Pending writes: LRU 0, flush list 0, single page 0
Pages made young 8, not young 0
0.05 youngs/s, 0.00 non-youngs/s
Pages read 132333, created 2446, written 7006
20.28 reads/s, 0.19 creates/s, 29.81 writes/s
Buffer pool hit rate 1000 / 1000, young-making rate 0 / 1000 not 0 / 1000
Pages read ahead 0.00/s, evicted without access 0.00/s, Random read ahead 0.00/s
LRU len: 134779, unzip_LRU len: 0
I/O sum[0]:cur[1808], unzip sum[0]:cur[0]
----------------------
INDIVIDUAL BUFFER POOL INFO
----------------------
---BUFFER POOL 0
Buffer pool size   311258
Free buffers       294470
Database pages     16487
Old database pages 6106
Modified db pages  1
Pending reads      0
Pending writes: LRU 0, flush list 0, single page 0
Pages made young 2, not young 0
0.05 youngs/s, 0.00 non-youngs/s
Pages read 16164, created 323, written 1314
2.67 reads/s, 0.05 creates/s, 7.29 writes/s
Buffer pool hit rate 1000 / 1000, young-making rate 0 / 1000 not 0 / 1000
Pages read ahead 0.00/s, evicted without access 0.00/s, Random read ahead 0.00/s
LRU len: 16487, unzip_LRU len: 0
I/O sum[0]:cur[226], unzip sum[0]:cur[0]
---BUFFER POOL 1
Buffer pool size   311258
Free buffers       294680
Database pages     16281
Old database pages 6029
Modified db pages  0
Pending reads      0
Pending writes: LRU 0, flush list 0, single page 0
Pages made young 1, not young 0
0.00 youngs/s, 0.00 non-youngs/s
Pages read 16022, created 259, written 593
2.14 reads/s, 0.00 creates/s, 1.81 writes/s
Buffer pool hit rate 1000 / 1000, young-making rate 0 / 1000 not 0 / 1000
Pages read ahead 0.00/s, evicted without access 0.00/s, Random read ahead 0.00/s
LRU len: 16281, unzip_LRU len: 0
I/O sum[0]:cur[226], unzip sum[0]:cur[0]
---BUFFER POOL 2
Buffer pool size   311258
Free buffers       293338
Database pages     17627
Old database pages 6526
Modified db pages  1
Pending reads      0
Pending writes: LRU 0, flush list 0, single page 0
Pages made young 3, not young 0
0.00 youngs/s, 0.00 non-youngs/s
Pages read 17306, created 321, written 930
1.00 reads/s, 0.00 creates/s, 3.43 writes/s
Buffer pool hit rate 1000 / 1000, young-making rate 0 / 1000 not 0 / 1000
Pages read ahead 0.00/s, evicted without access 0.00/s, Random read ahead 0.00/s
LRU len: 17627, unzip_LRU len: 0
I/O sum[0]:cur[226], unzip sum[0]:cur[0]
---BUFFER POOL 3
Buffer pool size   311258
Free buffers       294783
Database pages     16173
Old database pages 5990
Modified db pages  2
Pending reads      0
Pending writes: LRU 0, flush list 0, single page 0
Pages made young 0, not young 0
0.00 youngs/s, 0.00 non-youngs/s
Pages read 15824, created 349, written 1188
6.48 reads/s, 0.00 creates/s, 7.52 writes/s
Buffer pool hit rate 999 / 1000, young-making rate 0 / 1000 not 0 / 1000
Pages read ahead 0.00/s, evicted without access 0.00/s, Random read ahead 0.00/s
LRU len: 16173, unzip_LRU len: 0
I/O sum[0]:cur[226], unzip sum[0]:cur[0]
---BUFFER POOL 4
Buffer pool size   311258
Free buffers       294111
Database pages     16842
Old database pages 6237
Modified db pages  3
Pending reads      0
Pending writes: LRU 0, flush list 0, single page 0
Pages made young 0, not young 0
0.00 youngs/s, 0.00 non-youngs/s
Pages read 16515, created 327, written 847
2.48 reads/s, 0.00 creates/s, 2.14 writes/s
Buffer pool hit rate 1000 / 1000, young-making rate 0 / 1000 not 0 / 1000
Pages read ahead 0.00/s, evicted without access 0.00/s, Random read ahead 0.00/s
LRU len: 16842, unzip_LRU len: 0
I/O sum[0]:cur[226], unzip sum[0]:cur[0]
---BUFFER POOL 5
Buffer pool size   311258
Free buffers       293676
Database pages     17285
Old database pages 6400
Modified db pages  0
Pending reads      0
Pending writes: LRU 0, flush list 0, single page 0
Pages made young 2, not young 0
0.00 youngs/s, 0.00 non-youngs/s
Pages read 16974, created 311, written 499
2.38 reads/s, 0.00 creates/s, 0.29 writes/s
Buffer pool hit rate 1000 / 1000, young-making rate 0 / 1000 not 0 / 1000
Pages read ahead 0.00/s, evicted without access 0.00/s, Random read ahead 0.00/s
LRU len: 17285, unzip_LRU len: 0
I/O sum[0]:cur[226], unzip sum[0]:cur[0]
---BUFFER POOL 6
Buffer pool size   311258
Free buffers       294669
Database pages     16286
Old database pages 6031
Modified db pages  0
Pending reads      0
Pending writes: LRU 0, flush list 0, single page 0
Pages made young 0, not young 0
0.00 youngs/s, 0.00 non-youngs/s
Pages read 15999, created 287, written 816
1.29 reads/s, 0.14 creates/s, 4.38 writes/s
Buffer pool hit rate 1000 / 1000, young-making rate 0 / 1000 not 0 / 1000
Pages read ahead 0.00/s, evicted without access 0.00/s, Random read ahead 0.00/s
LRU len: 16286, unzip_LRU len: 0
I/O sum[0]:cur[226], unzip sum[0]:cur[0]
---BUFFER POOL 7
Buffer pool size   311258
Free buffers       293153
Database pages     17798
Old database pages 6589
Modified db pages  1
Pending reads      0
Pending writes: LRU 0, flush list 0, single page 0
Pages made young 0, not young 0
0.00 youngs/s, 0.00 non-youngs/s
Pages read 17529, created 269, written 819
1.86 reads/s, 0.00 creates/s, 2.95 writes/s
Buffer pool hit rate 1000 / 1000, young-making rate 0 / 1000 not 0 / 1000
Pages read ahead 0.00/s, evicted without access 0.00/s, Random read ahead 0.00/s
LRU len: 17798, unzip_LRU len: 0
I/O sum[0]:cur[226], unzip sum[0]:cur[0]
--------------
ROW OPERATIONS
--------------
0 queries inside InnoDB, 0 queries in queue
0 read views open inside InnoDB
Process ID=1, Main thread ID=139645190752000, state: sleeping
Number of rows inserted 232159, updated 7538, deleted 72, read 74948240
1.14 inserts/s, 10.19 updates/s, 0.00 deletes/s, 62857.63 reads/s

73K 表是糟糕的設計,不利於性能。如果你把它降到2K,那可能是合理的。

有一些設置是表的記憶體;他們將在數百或數千,但不是 73K。

本質上,每個客戶都有自己的 CRM 表集,這些表幾乎都非常相似,只是它只保存他們獨有的數據。通過一些重構,我可以非常輕鬆地將數據複製到具有大量行的幾個表中(這意味著我可能會刪除近 71000 個表)。但是,我想對此提出想法和意見,因為 CRM 中發生了很多數據和操作,所以我認為查找會更快,因為使用多個鍵的需要更少。

作為一般規則,多租戶解決方案不應使用表實現。沒有任何理由讓我有理由相信這條一般規則在這裡不適用。

您有一個自然複合鍵,其中包括customer_id. 在此基礎上將其劃分為表格,然後在任何其他 id 欄位上,將不再有意義。

引用自:https://dba.stackexchange.com/questions/191358