mysql cluster 配置文件更新 怎么重启

mysql cluster 配置文件更新 怎么重启,第1张

一、定义MySQL Cluster的TCP/IP连接

TCP/IP是MySQL集群用于建立连接的默认传输协议,正常情况下不需要定义连接。可使用“[TCP DEFAULT]”或“[TCP]”进行定义。

1. SendBufferMemory

TCP传输缓存。默认值为 256KB。

2. SendSignalId

通过网络传输消息ID。默认禁止该特性(取值: Y/N或1/0)。

3. Checksum

启用该参数将在所有消息置于发送缓冲之前,为所有参数计算校验和。默认禁止该特性(取值: Y/N或1/0)。

4. ReceiveBufferMemory

指定从TCP/IP Socket接收数据时所使用的缓冲大小。几乎不需要更改该参数的默认值,默认值为64KB。

二、定义数据结点默认行为

NoOfReplicas为必要参数,使用“[NDBD DEFAULT]”进行定义。

1. NoOfReplicas

定义集群中每个表保存的拷贝数,另外还指定结点组的大小。结点组指保存相同信息的结点集合。通常情况下不需要为该参数指定值。NoOfReplicas没有默认值,最大的可能值为 4。

三、定义管理服务器(MGM)

用于配置管理服务器的行为。下面的参数均可以被忽略,如果是这样,将使用其默认值。如果没有定义ExecuteOnComputer或HostName,则会指定为localhost。可使用“[NDB_MGMD]”定义单个管理结点的行为,也可使用“[NDB_MGMD DEFAULT]”定义多个管理结点的默认行为。

1. NodeId

集群中结点的唯一标识,取值 1~63。

2. HostName

指定结点主机名或IP。

3. ExecuteOnComputer

引用在“[COMPUTER]”部分中定义的计算机之一。

4. PortNumber

管理服务器监听端口(默认值: 2202)。

5. LogDestination

结点日志出处理方式,可取下述值:

5.1. CONSOLE

将日志输出到标准输出设备(stdout)。

5.2. SYSLOG:facility=syslog

将日志发送到syslog(系统日志)软设备,可能值:

auth, authpriv, cron, daemon, ftp, kern, lpr, mail, news, syslog

, user, uucp, local0, local12~7

5.3. FILE:filename=/var/log/mgmd.log,maxsize=1000000,maxfiles=6

讲日志输出到文件,可指定一下值:

filename:日志文件名称。

maxsize:日志文件最大尺寸,大于该尺寸时自动创建新日志文件。

maxfiles:日志文件最大数量。

6. ArbitrationRank

指定哪个结点扮演决策角色,只有MGM结点和SQL结点可以使用(默认值:1)。通常情况下,应将值设为 1,并将所有SQL结点设为 0,以MGM服务器作为决策程序。可取下述值之一:

0:该结点永远不用作决策。

1:该结点具有高优先级。

2:该结点具有低有限级。

7. ArbitrationDelay

指定管理服务器对决策请求的延迟时间,毫秒为单位,默认为 0。通常情况下不需要改变它。

8. DataDir

保存管理服务器输出文件的位置,包括日志,进程输出文件,以及程序的pid文件。对于日志文件,可通过设置LogDestination的FILE参数覆盖它。

四、定义数据结点(NDBD)

用于配置数据结点的行为。ExecuteOnComputer或HostName为必要参数。对于各种参数,可以使用后缀k、M或G指明单位。使用“[NDBD]”进行定义。

1. NodeId

启动结点时,可在命令行中分配ID(即数据结点ID),也能在配置文件中分配。

2. HostName

指定结点主机名或IP。

3. ExecuteOnComputer

引用在“[COMPUTER]”部分中定义的计算机之一。

4. DataDir

指定存放跟踪文件,日志文件,pid文件以及错误日志的目录。

5. BackupDataDir

指定存放备份的目录,默认为 {FileSystemPath}/BACKUP。

6. DataMemory

指定数据内存,默认值为 80MB,最小值 1MB,无大小限制。

7. IndexMemory

指定索引内存,默认值为 18MB,最小值 1MB,无大小限制。

8. MaxNoOfConcurrentTransactions

用于设定结点内可能的并发事务数,默认值为 4096。对于所有结点,必须将参数设置为相同的值。

9. MaxNoOfConcurrentOperations

设置能同时出现在更新阶段或同时锁定的记录数。默认值为 32768。

10. MaxNoOfLocalOperations

默认情况下,将按照1.1 * MaxNoOfConcurrentOperations计算该参数,它适合于具有很多并发事务,但不存在特大事务的系统。如果需要在某一时间处理特大事务,而且有很多结点,最好通过明确指定该参数以覆盖默认值。

11. MaxNoOfConcurrentIndexOperations

该参数的默认值为8192。只有在极其罕见的情况下,需要使用唯一性哈希索引执行极高的并行 *** 作时,才有必要增大该值。如果确信该集群不需要高的并行 *** 作,可以使用较小的值并节省内存。

12. MaxNoOfFiredTriggers

默认值是4000,它足以应付大多数情况。在某些情况下,如果认为在集群中对并行 *** 作的要求并不高, 甚至还能降低它。

13. TransactionBufferMemory

该参数影响的内存用于跟踪更新索引表和读取唯一索引时执行的 *** 作。该内存用于保存关于这类 *** 作的键和列信息。几乎不需要更改该参数的默认值。

14. MaxNoOfConcurrentScans

该参数用于控制可在集群中执行的并行扫描的数量。默认值为256,最大值为500。

15. MaxNoOfLocalScans

如果很多扫描不是完全并行化的,指定本地扫描记录的数量。

16. BatchSizePerLocalScan

该参数用于计算锁定记录的数量。要想处理很多并发扫描 *** 作,需要这类记录。默认值是64,该值与SQL结点中定义的 ScanBatchSize 关系密切。

17. LongMessageBuffer

用于在单个结点内和结点之间传递消息的内部缓冲。尽管几乎不需要改变它,但它仍是可配置的。默认情况下,它被设置为1MB。

18. NoOfFragmentLogFiles

设置结点的REDO日志文件的大小,默认值为 8。

19. MaxNoOfSavedMessages

设置跟踪文件的最大数,默认值为 25。

20. MaxNoOfAttributes

设置可在集群中定义的属性数量,默认值为 1000,最小值为 32。

21. MaxNoOfTables

设置集群中最大表对象数量。默认值为128,最小值为 8,最大值为 1600。

22. MaxNoOfOrderedIndexes

对于集群中的每个有序索引,会分配一个对象,用于描述索引的内容,以及它的存储片段。在默认情况下,每个如此定义的索引还定义了一个有序索引。每个唯一索引和主键都具有一个有序索引和一个哈希索引。MaxNoOfOrderedIndexes设置有序索引的总数,这是系统任何时候能够使用的有序索引的总数。这个参数的默认值是128。每个结点中的每个索引对象尺寸大约为10KB。

23. MaxNoOfUniqueHashIndexes

对于每个不是主键的唯一索引,会分配一个表,用于将唯一键映射至索引表的主键。在默认情况下,还会为每个唯一索引定义一个有序索引。想要避免这种情况,当定义唯一索引时,你还必须指定“USING HASH”选项。默认值是64。每个结点中的每个索引的尺寸大约为15KB。

24. MaxNoOfTriggers

该参数用于设置集群中触发器的最大数量。

25. LockPagesInMainMemory

对于很多 *** 作系统,能够将进程锁定在内存中,以避免与磁盘的交换。使用它可以确保集群的实时特性。默认情况下,该特性是被禁止的(取值:Y/N或1/0)。

26. StopOnError

出现错误时,该参数指定NDBD进程是退出还是自动重启。默认情况下,该特性是启用的(取值:Y/N或1/0)。

27. Diskless

指定集群为“无磁盘”,意味着不会为表在磁盘上设立检查点,也不会记录任何日志。默认情况下,该特性是被禁止的(取值:Y/N或1/0)。

28. RestartOnErrorInsert

仅当编译为调试版时才能访问该特性。默认情况下,该特性是被禁止的。

29. TimeBetweenWatchDogCheck

指定监控线程检查的间隔。该参数以毫秒为单位,默认值为 4000 毫秒。

30. StartPartialTimeout

该参数指定了在调用集群初始化子程序之前,集群等待所有存储结点出现的时间。默认值为 30000 毫秒(0 表示无限超时)。

31. StartPartitionedTimeout

如果集群做好了启动准备,但仍可能处于隔离状态,集群将等待该超时时间结束。默认值为 60000 毫秒。

32. StartFailureTimeout

如果数据结点在该参数指定的时间内未完成其启动序列,结点启动将失败。如果将该参数设置为0,表示不采用数据结点超时。默认值为 60000 毫秒。

33. HeartbeatIntervalDbDb

每个数据结点发送心跳信号到SQL结点的间隔。默认值为 1500 毫秒。

34. HeartbeatIntervalDbApi

每个数据结点都会向每个MySQL服务器(SQL结点)发送心跳信号,以确保它们依然保持接触。如果一个MySQL服务器没能成功地及时发送一个心跳,那么就会将其声明为“失效”,在这种情况下,所有正在进行的事务都会结束,并且释放所有资源。SQL结点不能重连,直到由先前的MySQL实例所初始化的所有活动都已经结束为止。默认的时间间隔是1500毫秒(1.5秒)单个数据结点之间的这个时间间隔可以是不同的,因为每个数据结点都会监视与其连接的MySQL服务器,与所有其他的数据结点无关。

35. TimeBetweenLocalCheckpoints

该参数默认值为20。

36. TimeBetweenGlobalCheckpoints

该参数定义了全局检查点 *** 作之间的时间间隔。默认值为 2000 毫秒。

37. TimeBetweenInactiveTransactionAbortCheck

该参数默认值为 1000 毫秒。

38. TransactionInactiveTimeout

如果事务目前未执行任何查询,而是等待进一步的用户输入,该参数指明了放弃事务之前用户能够等待的最长时间。默认值为 0。

39. TransactionDeadlockDetectionTimeout

该超时参数指明了放弃事务之前,事务协调器等候另一结点执行查询的时间。

40. NoOfDiskPagesToDiskAfterRestartTUP

该参数指定了执行本地检查点 *** 作的速度,并能与NoOfFragmentLogFiles、DataMemory和IndexMemory一起使用。默认值是 40(每秒3.2MB的数据页)。

41. NoOfDiskPagesToDiskAfterRestartACC

该参数使用的单位与NoOfDiskPagesToDiskAfterRestartTUP的相同。工作方式也类似,但限制的是从索引内存进行的索引页写入速度。该参数的默认值为每秒20个索引内存页(1.6MB每秒)。

42. NoOfDiskPagesToDiskDuringRestartTUP

该参数涉及从数据内存写入的页。默认值是40(3.2MB每秒)。

43. NoOfDiskPagesToDiskDuringRestartACC

该参数默认值是20(1.6MB每秒)。

44. ArbitrationTimeout

指定数据结点等待决策程序对决策消息的回应的时间。默认值为 1000 毫秒。

45. UndoIndexBuffer

指定UNDO索引缓冲区大小。默认值为 2MB,最小值为1MB。

46. UndoDataBuffer

指定UNDO数据缓冲区大小。默认值为 16MB,最小值为1MB。

47. RedoBuffer

指定REDO数据缓冲区大小。默认值为 8MB,最小值为1MB。

48. LogLevelStartup

日志级别,用于进程启动过程中生成的事件。默认级别为 1。

49. LogLevelShutdown

日志级别,用于作为结点恰当关闭进程组成部分而生成的事件。默认级别为 0。

50. LogLevelStatistic

日志级别,用于统计事件,如主键法读取次数、更新数、插入数、与缓冲使用有关的信息等。默认级别为 0。

51. LogLevelCheckpoint

日志级别,用于由本地和全局检查点 *** 作生成的事件。默认级别为 0。

52. LogLevelNodeRestart

日志级别,用于在结点重启过程中生成的事件。默认级别为 0。

53. LogLevelConnection

日志级别,用于由集群结点间的连接生成的事件。默认级别为 0。

54. LogLevelError

日志级别,用于由在整个集群内的错误和警告生成的事件。这类错误不会导致任何结点失败,但仍值得记录。默认级别为 0。

55. LogLevelInfo

日志级别,用于为集群的一般状态信息而生成的事件。默认级别为 0

56. BackupDataBufferSize

指定数据备份缓冲区大小。默认值为 2MB。

57. BackupLogBufferSize

指定日志备份缓冲区大小。默认值为 2MB。

58. BackupMemory

该参数是BackupDataBufferSize和BackupLogBufferSize之和。默认值是2MB + 2MB = 4MB。

59. BackupWriteSize

该参数指定了由备份日志缓冲和备份数据缓冲写入磁盘的消息大小。默认值为 32KB。

60. FileSystemPath

该参数指定了存放为元数据创建的所有文件、REDO日志、UNDO日志和数据文件目录。注意:在ndbd进程启动前,该目录必须已存在。

五、定义MySQL服务器(SQL)

定义用于访问集群数据的MySQL服务器(SQL结点)的行为。可使用“[MYSQLD]”定义单个SQL结点的行为,也可使用“[MYSQLD DEFAULT]”定义多个SQL结点的默认行为。

1. NodeId

集群中结点的唯一标识。取值 1~63。

2. HostName

指定结点主机名或IP。

3. ExecuteOnComputer

引用在“[COMPUTER]”部分中定义的计算机之一。

4. ArbitrationRank

对于正常配置,使用管理服务器作为决策程序。将管理服务器的ArbitrationRank设置为 1(默认),并将所有SQL结点的ArbitrationRank设置为 0。

5. ArbitrationDelay

指定管理服务器对决策请求的延迟时间,以毫秒为单位。默认为 0,通常情况下不需要改变它。

6. BatchByteSize

对于被转换为全表扫描或索引范围扫描的查询来说,以适当大小批量获取记录,可以获得最佳的性能。这个合适的尺寸既可以用记录数量(BatchSize)表示,也可以用字节数量(BatchByteSize)表示。实际的批量尺寸受这两个参数的限制。根据这个参数的设置方法,查询性能最多可以提高40%。该参数以字节为单位,默认值是 32KB。

7. BatchSize

该参数以字节为单位,默认值是 64,最大值为 992。

8. MaxScanBatchSize

指定从各数据结点发送的每批数据的大小,默认值是 256KB,最大值为 16MB。

六、配置文件示例

1. check table 和 repair table

登陆mysql 终端:

mysql -uxxxxx -p dbname

check table tabTest

如果出现的结果说Status是OK,则不用修复,如果有Error,可以用:

repair table tabTest

进行修复,修复之后可以在用check table命令来进行检查。在新版本的phpMyAdmin里面也可以使用check/repair的功能。

2. myisamchk, isamchk

其中myisamchk适用于MYISAM类型的数据表,而isamchk适用于ISAM类型的数据表。这两条命令的主要参数相同,一般新的系统都使用MYISAM作为缺省的数据表类型,这里以myisamchk为例子进行说明。当发现某个数据表出现问题时可以使用:

myisamchk tablename.MYI

进行检测,如果需要修复的话,可以使用:

myisamchk -of tablename.MYI

关于myisamchk的详细参数说明,可以参见它的使用帮助。需要注意的时在进行修改时必须确保MySQL服务器没有访问这个数据表,保险的情况下是最好在进行检测时把MySQL服务器Shutdown掉。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5905986.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-07
下一篇 2023-03-07

发表评论

登录后才能评论

评论列表(0条)

保存