MySQL Cluster导入数据表时报错:Got error 708 'No more attribute metadata records (increase MaxNoOfAttributes)...

本文介绍了解决MySQLCluster中因字段总数超过默认限制而产生的错误的方法。通过调整配置文件中的MaxNoOfAttributes参数,并重启服务来解决问题。

准备把以前的非集群版MySQL数据导入到MySQL Cluster中,出现

'No more attribute metadata records (increase MaxNoOfAttributes)' from NDBCLUSTER 

的错误,如下图所示:(注:数据表引擎已改为 ENGINE=ndbcluster

 

 

【解决方案】

修改 MGM节点配置,把 [ndbd]中的 “MaxNoOfAttributes=1000”改成 “MaxNoOfAttributes=5000000”:

vim /usr/local/mysql/etc/config.ini

#部分资料参考如下:

[ndbd default]
NoOfReplicas = 2
DataMemory = 80M
IndexMemory = 18M
datadir = /usr/local/mysql/data

MaxNoOfTables = 1024
MaxNoOfAttributes = 5000000
MaxNoOfOrderedIndexes = 10000

#修改了配置文件后,需要添加--initial参数重新读取才行

/usr/local/mysql/bin/ndb_mgmd  -f  /usr/local/mysql/etc/config.ini --initial

#查看变量修改是否生效

[root@localhost bin]# /usr/local/mysql/bin/ndb_config -q MaxNoOfAttributes
   5000000 5000000

注:如果加了 --initial 参数,还是没生效的话,那就先 kill掉ndb_mgm,再重新 --initial 启动 ndb_mgmd 吧!

 

参数说明】 MaxNoOfAttributes 表示 MySQL Cluster集群中,所有数据表的字段总数能达到的上限!

 

 

参考:

Mysql Cluster MaxNoOfAttributes参数无效疑问

MySQL Cluster 配置文件(config.ini)详解

### Pyglet AttributeError: module 'pyglet.window.win32' has no attribute 'SetWindowPos' 解决方法 在尝试使用 `pyglet.window.win32.SetWindowPos` 方法设置窗口始终置顶,可能会遇到 `AttributeError` 错误,提示 `'module 'pyglet.window.win32' has no attribute 'SetWindowPos''`。这是因为 `pyglet.window.win32` 模块并没有直接提供 `SetWindowPos` 方法,开发者可能误以为可以像调用标准 Windows API 一样使用该方法[^1]。 为了解决这个问题,可以通过访问底层的 `ctypes` 库来直接调用 Windows 的 `SetWindowPos` API,而不是依赖 `pyglet.window.win32` 提供该方法。具体实现如下: ```python import pyglet import ctypes win = pyglet.window.Window(width=800, height=600, resizable=True) # 获取窗口的 Win32 句柄 hwnd = win._hwnd # 使用 Windows API 设置窗口始终置顶 user32 = ctypes.windll.user32 user32.SetWindowPos(hwnd, -1, 0, 0, 0, 0, 0x0001 | 0x0002) @win.event def on_draw(): win.clear() pyglet.app.run() ``` 在上述代码中,`ctypes` 被用来加载 `user32.dll`,并调用其中的 `SetWindowPos` 函数。参数 `-1` 表示将窗口设置为最顶层(`HWND_TOPMOST`),最后两个参数分别表示不改变窗口的位置和大小。这种方式可以绕过 `pyglet.window.win32` 模块缺少 `SetWindowPos` 方法的问题,并实现窗口置顶功能。 此外,需要注意的是,该解决方案仅适用于 Windows 平台。对于其他操作系统,如 macOS 或 Linux,可能需要采用不同的方法来实现窗口置顶功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值