我在OVH上有2台服务器,它们位于欧洲的不同数据中心(SBG1和GRA1)。我的控制ping是10ms。 我的网站运行了许多插入和读取查询。
当我尝试我的本地mysql服务器时,它非常快,但是当我使用远程mysql服务器时,查询运行会延迟。
我的远程Mysql配置
# Percona Server template configuration
[mysqld]
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
pid-file=/var/run/mysqld/mysqld.pid
skip-name-resolve
bind-address = 5.196.77.XXX
# skip-networking
sql-mode = 'NO_AUTO_CREATE_USER'
explicit_defaults_for_timestamp = 1
# MyISAM #
key_buffer_size = 2G
# SAFETY #
max_allowed_packet = 10G
# CACHES AND LIMITS #
tmp_table_size = 32M
max_heap_table_size = 32M
query_cache_type = 1
query_cache_size = 2M
query_cache_limit = 1M
join_buffer_size = 6M
max_connections = 600
thread_cache_size = 100
open_files_limit = 65535
table_definition_cache = 4096
table_open_cache = 4096
# INNODB #
innodb_flush_method = O_DIRECT
innodb_log_files_in_group = 2
innodb_log_file_size = 512M
innodb_flush_log_at_trx_commit = 1
innodb_file_per_table = 1
innodb_buffer_pool_size = 20G
innodb_data_file_path =ibdata1:20M:autoextend
# LOGGING #
log_error = /var/log/mysql/mysql-error.log
log-queries-not-using-indexes = 1
slow_query_log = 1
long_query_time = 3
slow_query_log_file = /var/log/mysql/mysql-slow.log
我不知道如何连接每台服务器的本地连接。
我必须使用vRack吗? (我有,但我不知道我可以使用它) 要么 我是否必须将我的服务器移动到同一位置?
我该怎么办
答案 0 :(得分:0)
Replication启用来自一个MySQL数据库服务器(主服务器)的数据 被复制到一个或多个MySQL数据库服务器(从属服务器)。 默认情况下,复制是异步的奴隶不需要 永久连接以接收来自主服务器的更新。
如果我知道你有一个服务器S-A宽度数据库D-A和一个带有数据库D-B的服务器B和一个带有数据库D-Local的本地服务器S-Local。
您可以复制本地服务器S-Local的D-A和D-B数据库。所以你的查询会更快。
我不确定S-A和S-B之间是否有通信,但您甚至可以在服务器S-B上复制数据库D-A,在服务器S-A上复制数据库D-B。
我的团队必须查询远程服务器。这很慢。通过复制,我们的查询连接到本地复制服务器,它非常有用