限制mysql表的大小
是否可以限制单个mysql表的大小(磁盘大小/行) 如果不可能,在一台物理计算机上运行多个mysql引擎的最简单方法是什么?(我的计划是将一个mysql实例的数据文件设置为一个单独的磁盘分区)。如果您有(相对)少量的数据,您可以尝试使用存储引擎创建一个表。它确实有一个可配置的内存,但当然,您受到机箱上可用内存量的限制 如果数据大小需要基于磁盘的表,那么限制表大小的一种直接方法是运行一个作业,定期清除表中的部分内容。这可能是一个比使用小分区更好的选择——许多MySQL命令在磁盘已满时表现不佳限制mysql表的大小,mysql,schema,limit,Mysql,Schema,Limit,是否可以限制单个mysql表的大小(磁盘大小/行) 如果不可能,在一台物理计算机上运行多个mysql引擎的最简单方法是什么?(我的计划是将一个mysql实例的数据文件设置为一个单独的磁盘分区)。如果您有(相对)少量的数据,您可以尝试使用存储引擎创建一个表。它确实有一个可配置的内存,但当然,您受到机箱上可用内存量的限制 如果数据大小需要基于磁盘的表,那么限制表大小的一种直接方法是运行一个作业,定期清除表中的部分内容。这可能是一个比使用小分区更好的选择——许多MySQL命令在磁盘已满时表现不佳 此外
此外,您可以在计算机上运行任意数量的MySQL实例——如果您是通过TCP/IP连接的,只需为每个实例分配不同的端口号即可 您可以使用myisampack实用程序创建压缩表(但仅适用于MyISAM引擎)。这些表将成为静态数据类型的只读表。如果它们是MyISAM表,toy可以指定存储数据和索引文件的目录 根据用户界面:
Data Directory: ___________________ Directory where to put the tables data file
Index Directory: __________________ Directory where to put the tables index file
This works only for MyISAM tables and not on some operating systems (Windows)
因此,我想这意味着如果您不在Windows主机上,您可以移动表的文件。这与非常相似,只是每个模式都有限制。不幸的是,没有一种真正得到支持的方法来做到这一点。请在那里查看答案,看看它们是否也回答了您的问题。为了强制执行配额,我认为有几种不同的方法,其中一种可能是我遇到过的最合理的方法 要将mysql定向到不同的数据目录,请在linux设置中放置符号链接,或者尝试使用配置文件。MySQL将允许您通过此处读取的这些conf文件或搜索有关my.cnf的信息来指定数据库文件的保存位置 祝你好运,时间不早了,我要去睡觉了
[mysqld]
port=PORT_NUMBER
datadir=/home/USER/mysql
tmpdir=/home/USER/tmp/mysql
要启动服务器,请运行:
mysqld_safe --defaults-file=user_specific_my.cnf
要停止服务器,请运行:
mysqladmin -u root -pROOT_PASSWORD --port=3307 -h 127.0.0.1 shutdown
要连接到服务器,用户应使用:
mysql --port=USER_PORT -h 127.0.0.1 -pPASSWORD
什么站台?Linux、Windows、*BSD…我想要一个硬限制,以确保一个表(比如日志记录)中的溢出不会影响其他表的性能。