MySQL және MariaDB ДҚБЖ үшін деректерді келесі жолдармен сақтауға болады:
ibdata1 файлында) сақталған кезде, ортақ кесте кеңістігі ретінде.Ортақ кесте кеңістігін пайдалану кесте кеңістігінің фрагментациялану қаупін арттырады. ҚЫСУ мүмкін болмағандықтан, ортақ кесте кеңістігіндегі файл диск кеңістігінің шамамен 90%-ын алуы мүмкін. Бұл дискінің ішкі жүйесінің жұмысына теріс әсер етеді. Осылайша әр кестедегі файл кеңістігін таңдау пайдалы.
Бұл мақалада деректерді ортақ кесте кеңістігінен әр кестедегі файл кеңістігіне жіберу жолы сипатталған. MySQL немесе MariaDB ДҚБЖ басқа қолданбалармен де пайдаланылса, осы қолданбалардың дерекқорларын әр кестедегі файл кеңістігіне жіберу керек.
Басқару серверіне арналған MySQL немесе MariaDB ДҚБЖ пайдалансаңыз ғана, процедураны орындауды ұсынамыз.
Деректерді ортақ кесте кеңістігінен әр кестедегі файл кеңістігіне жіберу дискінің ішкі жүйесіндегі жүктемені арттыруы мүмкін.
Алдын ала талаптар
Бастамай тұрып, келесілерді тексеріңіз:
Қажетті диск кеңістігі ағымдағы жалпы дерекқорлар өлшемінің 150%-ын құрайды (ibdata1 файлының ағымдағы өлшемі).
Процесс
Деректерді ортақ кесте кеңістігінен әр кестедегі файл кеңістігіне жіберу үшін:
fix_tablespace.sqlскриптісін іске қосыңыз.
Осы сілтемелерді басып, fix_tablespace.sql скриптілерін көруге болады:
MySQL 5.7 және MariaDB 10.1+ скриптісін көру
MySQL 8.0+ үшін скриптіні көру
Скриптінің орындалуын тоқтатпау керек.
Ешбір ДҚБЖ қатесі орын алмаса, бірақ скриптінің орындалуын тоқтатсаңыз, скриптіні қайта іске қосыңыз немесе осы процедураның қадамдарын орындауды тоқтатыңыз, ДҚБЖ қызметін қайта іске қосыңыз және сақтық көшірмеден басқару серверінің деректерін қалпына келтіріңіз.
[mysqld] бөлімінде innodb_file_per_table параметрін 1 мәніне орнатыңыз.Деректер ортақ кесте кеңістігінен әр кестедегі файл кеңістігіне жіберіледі.
Басына оралу