ا InnoDB نام موتور پایگاه داده (Database Engine) یا در برخی منابع موتور ذخیره سازی (Storage Engine) که در پایگاه
داده MySQL 5.5 به بعد به صورت پیشفرض استفاده می شود. InnoDB چهار ویژگی
ا ACID و ویژگی کلید خارجی را پشتیبانی می کند. در حال حاظر InnoDB یکی از
محصولات اوراکل است و پایگاه داده های مشتق شده از MySQL یعنی MariaDB و
اPercona Server از یک موتور پایگاه داده به نام XtraDB استفاده می کنند که
در واقع مشتق شده از InnoDB است.
برخی از ویژگی های MySQL InnoDB عبارتند از
پشتیبانی از کلید خارجی
کلید خارجی یک رابطه میان ستون های دو جدول
را ایجاد می کند. به طور مثال در یک جدول اطلاعات کارمندان و در جدول دیگر
اطلاعات دپارتمان ها نگه داری می شود بنابراین در جدول کارمندان یک ستون
به عنوان کلید خارجی به جدول دپارتمان ها وجود دارد.
پشتیبانی از تراکنش ها
تراکنش مجموعه ای از دستورالعمل ها بر روی
پایگاه داده است. هر تراکنش یک آغاز و یک پایان دارد و از نظر کاربر (و نه
سیستم مدیریت پایگاه داده) هر تراکنش می تواند از یک تا چندین دستور العمل
ا SQL تشکیل شده باشد. همچنین پایان یک تراکنش با صادر شدن دستور commit
مشخص می شود. دستور commit مشخص می کند که تغییرات تراکنش بایستی به صورت
دائمی بر روی پایگاه داده ثبت و ذخیره سازی شود.
امکان ایجاد Tablespace
یکی دیگر از ویژگی های InnoDB امکان ایجاد
ا Tablespace در پایگاه داده MySQL توسط دستور CREATE TABLESPACE است.
ا Tablespace یک دسته بندی منطقی از جداول پایگاه داده است که می توان به هر Tablespace یک یا چندین فایل را اختصاص داد.
قفل گذاری در سطح سطرها یا Row-level locking
در پایگاه داده به دلیل آنکه به صورت
همزمان چندین تراکنش قصد دسترسی به یک جدول را دارند، بنابراین لازم است تا
برای حفظ سازگاری پایگاه داده، از مکانیزمی استفاده شود تا این اجرای
همروند چندین تراکنش، منجر به ناسازگاری در پایگاه داده نشوند. قفل گذاری
مکانیزمی است به این منظور به این صورت که به صورت پیشفرض قفل ها بر روی یک
جدول صادر می شود.
فرض کنید دو تراکنش قصد دسترسی و تغییر
ا (Insert, Update, Delete) بر روی یک یا چندین سطر از یک جدول را دارند. به
صورت پیش برای دسترسی تراکنش اول به سطر های لازم، کل جدول (تمامی سطرها)
بی جهت قفل گذاری می شوند (قفل گذاری در سطح جدول یا Table-level locking) و
تراکنش دوم که نیاز به دیگر سطرها از جدول دارد بی جهت باید در حالت Wait
باشد. اما در رویکرد Row-level Locking قفل تنها بر روی سطرهای مورد نیاز
تراکنش صادر خواهد شد.
با استفاده از کوئری های زیر می توان فهرستی از جدوالی که از InnoDB استفاده می کنند را فهرست کنیم.
SELECT table_name, table_schema
FROM information_schema.tables
;’WHERE engine = ‘InnoDB
#database #linux #mysql #engine #mariadb #innodb
@unixmens
داده MySQL 5.5 به بعد به صورت پیشفرض استفاده می شود. InnoDB چهار ویژگی
ا ACID و ویژگی کلید خارجی را پشتیبانی می کند. در حال حاظر InnoDB یکی از
محصولات اوراکل است و پایگاه داده های مشتق شده از MySQL یعنی MariaDB و
اPercona Server از یک موتور پایگاه داده به نام XtraDB استفاده می کنند که
در واقع مشتق شده از InnoDB است.
برخی از ویژگی های MySQL InnoDB عبارتند از
پشتیبانی از کلید خارجی
کلید خارجی یک رابطه میان ستون های دو جدول
را ایجاد می کند. به طور مثال در یک جدول اطلاعات کارمندان و در جدول دیگر
اطلاعات دپارتمان ها نگه داری می شود بنابراین در جدول کارمندان یک ستون
به عنوان کلید خارجی به جدول دپارتمان ها وجود دارد.
پشتیبانی از تراکنش ها
تراکنش مجموعه ای از دستورالعمل ها بر روی
پایگاه داده است. هر تراکنش یک آغاز و یک پایان دارد و از نظر کاربر (و نه
سیستم مدیریت پایگاه داده) هر تراکنش می تواند از یک تا چندین دستور العمل
ا SQL تشکیل شده باشد. همچنین پایان یک تراکنش با صادر شدن دستور commit
مشخص می شود. دستور commit مشخص می کند که تغییرات تراکنش بایستی به صورت
دائمی بر روی پایگاه داده ثبت و ذخیره سازی شود.
امکان ایجاد Tablespace
یکی دیگر از ویژگی های InnoDB امکان ایجاد
ا Tablespace در پایگاه داده MySQL توسط دستور CREATE TABLESPACE است.
ا Tablespace یک دسته بندی منطقی از جداول پایگاه داده است که می توان به هر Tablespace یک یا چندین فایل را اختصاص داد.
قفل گذاری در سطح سطرها یا Row-level locking
در پایگاه داده به دلیل آنکه به صورت
همزمان چندین تراکنش قصد دسترسی به یک جدول را دارند، بنابراین لازم است تا
برای حفظ سازگاری پایگاه داده، از مکانیزمی استفاده شود تا این اجرای
همروند چندین تراکنش، منجر به ناسازگاری در پایگاه داده نشوند. قفل گذاری
مکانیزمی است به این منظور به این صورت که به صورت پیشفرض قفل ها بر روی یک
جدول صادر می شود.
فرض کنید دو تراکنش قصد دسترسی و تغییر
ا (Insert, Update, Delete) بر روی یک یا چندین سطر از یک جدول را دارند. به
صورت پیش برای دسترسی تراکنش اول به سطر های لازم، کل جدول (تمامی سطرها)
بی جهت قفل گذاری می شوند (قفل گذاری در سطح جدول یا Table-level locking) و
تراکنش دوم که نیاز به دیگر سطرها از جدول دارد بی جهت باید در حالت Wait
باشد. اما در رویکرد Row-level Locking قفل تنها بر روی سطرهای مورد نیاز
تراکنش صادر خواهد شد.
با استفاده از کوئری های زیر می توان فهرستی از جدوالی که از InnoDB استفاده می کنند را فهرست کنیم.
SELECT table_name, table_schema
FROM information_schema.tables
;’WHERE engine = ‘InnoDB
#database #linux #mysql #engine #mariadb #innodb
@unixmens
Academy and Foundation unixmens | Your skills, Your future
mariadb api.pdf
مقاله mariadb / oracle mysql api
نویسنده : مهندس یاشار اسمعیل دخت
نسخه : 0.1
MariaDB Connect Engine is a feature of MariaDB that allows users to connect to external data sources and treat them as if they were regular tables in a MariaDB database. This capability is particularly useful for integrating data from various sources without the need to import it into the database. Here are some key points about the MariaDB Connect Engine:
Data Sources: The Connect Engine can connect to a variety of data sources, including other databases (like MySQL, PostgreSQL, and Oracle), NoSQL databases, flat files (CSV, JSON, etc.), and even web services.
Virtual Tables: When you connect to an external data source, the Connect Engine creates virtual tables that represent the data in those sources. You can then perform SQL queries on these virtual tables just like you would with regular tables in MariaDB.
Data Federation: This feature allows for data federation, meaning you can query and join data from multiple sources in a single SQL statement. This is particularly useful for reporting and analytics where data is spread across different systems.
Configuration: To use the Connect Engine, you need to configure it properly by defining the connection parameters and the structure of the external data. This is typically done using SQL commands to create a table that specifies the connection details.
Performance: While the Connect Engine provides flexibility, performance can vary depending on the external data source and the complexity of the queries. It's important to consider the performance implications when designing your data architecture.
Use Cases: Common use cases for the Connect Engine include data integration, reporting, and analytics, where organizations need to access and analyze data from multiple disparate sources without duplicating data.
Installation: The Connect Engine is not enabled by default in all MariaDB installations, so you may need to install it separately or enable it in your MariaDB configuration.
Overall, the MariaDB Connect Engine is a powerful tool for organizations looking to integrate and analyze data from various sources seamlessly.
#mariadb #engine #mysql #oracle #dba #devops #database #yashar_esmaildokht
https://t.me/unixmens
نویسنده : مهندس یاشار اسمعیل دخت
نسخه : 0.1
MariaDB Connect Engine is a feature of MariaDB that allows users to connect to external data sources and treat them as if they were regular tables in a MariaDB database. This capability is particularly useful for integrating data from various sources without the need to import it into the database. Here are some key points about the MariaDB Connect Engine:
Data Sources: The Connect Engine can connect to a variety of data sources, including other databases (like MySQL, PostgreSQL, and Oracle), NoSQL databases, flat files (CSV, JSON, etc.), and even web services.
Virtual Tables: When you connect to an external data source, the Connect Engine creates virtual tables that represent the data in those sources. You can then perform SQL queries on these virtual tables just like you would with regular tables in MariaDB.
Data Federation: This feature allows for data federation, meaning you can query and join data from multiple sources in a single SQL statement. This is particularly useful for reporting and analytics where data is spread across different systems.
Configuration: To use the Connect Engine, you need to configure it properly by defining the connection parameters and the structure of the external data. This is typically done using SQL commands to create a table that specifies the connection details.
Performance: While the Connect Engine provides flexibility, performance can vary depending on the external data source and the complexity of the queries. It's important to consider the performance implications when designing your data architecture.
Use Cases: Common use cases for the Connect Engine include data integration, reporting, and analytics, where organizations need to access and analyze data from multiple disparate sources without duplicating data.
Installation: The Connect Engine is not enabled by default in all MariaDB installations, so you may need to install it separately or enable it in your MariaDB configuration.
Overall, the MariaDB Connect Engine is a powerful tool for organizations looking to integrate and analyze data from various sources seamlessly.
#mariadb #engine #mysql #oracle #dba #devops #database #yashar_esmaildokht
https://t.me/unixmens
Telegram
Academy and Foundation unixmens | Your skills, Your future
@unixmens_support
@yashar_esm
unixmens@gmail.com
یک کانال علمی تکنولوژی
فلسفه متن باز-گنو/لینوکس-امنیت - اقتصاد
دیجیتال
Technology-driven -بیزینس های مبتنی بر تکنولوژی
Enterprise open source
ارایه دهنده راهکارهای ارتقای سازمانی - فردی - تیمی
@yashar_esm
unixmens@gmail.com
یک کانال علمی تکنولوژی
فلسفه متن باز-گنو/لینوکس-امنیت - اقتصاد
دیجیتال
Technology-driven -بیزینس های مبتنی بر تکنولوژی
Enterprise open source
ارایه دهنده راهکارهای ارتقای سازمانی - فردی - تیمی