MARIADBD-SAFE(1) MariaDB Database System MARIADBD-SAFE(1)

mariadbd-safe - اسکریپت راه‌اندازی سرور MariaDB (اکنون mariadbd-safe یک پیوند نمادین به mariadbd-safe است)

mariadbd-safe options

mariadbd-safe روش توصیه‌شده برای راه‌اندازی سرور mariadbd در یونیکس است. mariadbd-safe قابلیت‌های ایمنی خاصی مانند راه‌اندازی مجدد سرور هنگام بروز خطا و ثبت اطلاعات زمان اجرا در یک فایل لاگ خطا را اضافه می‌کند. توضیحات مربوط به ثبت وقایع خطا در ادامهٔ این بخش ارائه شده است.

mariadbd-safe تلاش می‌کند یک فایل اجرایی با نام mariadbd را اجرا کند. برای لغو رفتار پیش‌فرض و مشخص کردن صریح نام سروری که می‌خواهید اجرا شود، گزینهٔ --mariadbd یا --mariadbd-version را به mariadbd-safe مشخص کنید. همچنین می‌توانید از --ledir برای تعیین دایرکتوری‌ای که mariadbd-safe باید در آن به دنبال سرور بگردد استفاده کنید.

بسیاری از گزینه‌های mariadbd-safe مشابه گزینه‌های mariadbd هستند.

گزینه‌هایی که برای mariadbd-safe ناشناخته هستند، در صورتی که در خط فرمان تعیین شده باشند به mariadbd ارسال می‌شوند، اما اگر در گروه‌های [mariadbd-safe] یا [mariadbd_safe] از یک فایل تنظیمات تعیین شده باشند نادیده گرفته می‌شوند.

mariadbd-safe تمام گزینه‌ها را از بخش‌های [mariadbd]، [server]، [mariadbd-safe] و [mariadbd_safe] در فایل‌های تنظیمات می‌خواند. برای مثال، اگر یک بخش [mariadbd] را مانند زیر مشخص کنید، mariadbd-safe گزینهٔ --log-error را پیدا کرده و از آن استفاده خواهد کرد:

[mariadbd]
log-error=error.log

برای سازگاری با نسخه‌های پیشین، mariadbd-safe بخش‌های [safe_mariadbd] را نیز می‌خواند، هرچند که در نصب‌های فعلی باید نام چنین بخش‌هایی را به [mariadbd-safe] تغییر دهید.

mariadbd-safe از گزینه‌های موجود در فهرست زیر پشتیبانی می‌کند. همچنین فایل‌های تنظیمات را خوانده و از گزینه‌های مربوط به پردازش آن‌ها پشتیبانی می‌کند.

•--help

نمایش پیام راهنما و خروج.

•--basedir=path

مسیر دایرکتوری نصب MariaDB.

•--core-file-size=size

اندازهٔ فایل core که mariadbd باید بتواند ایجاد کند. مقدار این گزینه به ulimit -c داده می‌شود.

•--crash-script=file

اسکریپتی که در صورت فروپاشی (crash) ناگهانی mariadbd فراخوانی می‌شود.

•--datadir=path

مسیر دایرکتوری داده‌ها.

•--defaults-extra-file=path.sp نام یک فایل تنظیمات که علاوه بر فایل‌های تنظیمات معمول خوانده می‌شود. در صورت استفاده، این باید نخستین گزینه در خط فرمان باشد. اگر فایل وجود نداشته باشد یا به هر دلیلی غیرقابل‌دسترس باشد، سرور با یک خطا خارج خواهد شد.
•--defaults-file=file_name

نام یک فایل تنظیمات که به‌جای فایل‌های تنظیمات معمول خوانده می‌شود. در صورت استفاده، این باید نخستین گزینه در خط فرمان باشد.

•--flush-caches

تخلیه و پاک‌سازی بافرها/حافظه‌های موقت پیش از راه‌اندازی سرور.

•--ledir=path

اگر mariadbd-safe نتواند سرور را پیدا کند، از این گزینه برای مشخص کردن مسیر دایرکتوری محل قرارگیری سرور استفاده کنید.

•--log-error=file_name

نوشتن گزارش خطا در فایل مشخص‌شده.

•--malloc-lib=lib

پیش‌بارگذاری کتابخانه اشتراکی lib در صورت در دسترس بودن.

•--mariadbd=prog_name

نام برنامه سرور (در دایرکتوری ledir) که می‌خواهید راه‌اندازی کنید. این گزینه زمانی لازم است که از توزیع باینری MariaDB استفاده می‌کنید ولی دایرکتوری داده را خارج از توزیع باینری قرار داده‌اید. اگر mariadbd-safe نتواند سرور را پیدا کند، از گزینه --ledir برای تعیین مسیر دایرکتوری محل قرارگیری سرور استفاده کنید.

•--mariadbd-version=suffix

این گزینه شبیه به گزینه --mariadbd است، اما شما فقط پسوند نام برنامه سرور را مشخص می‌کنید. نام پایه mariadbd در نظر گرفته می‌شود. برای مثال، اگر از --mariadbd-version=debug استفاده کنید، mariadbd-safe برنامه mariadbd-debug را در دایرکتوری ledir راه‌اندازی می‌کند. اگر آرگومان ارائه‌شده به --mariadbd-version خالی باشد، mariadbd-safe از mariadbd در دایرکتوری ledir استفاده می‌کند.

•--nice=priority

استفاده از برنامه nice جهت تنظیم اولویت زمان‌بندی سرور روی مقدار داده‌شده.

•--no-auto-restart, --nowatch, --no-watch

خروج پس از راه‌اندازی mariadbd.

•--no-defaults.sp هیچ فایل گزینه‌ای خوانده نشود. در صورت استفاده، این گزینه باید اولین گزینه در خط فرمان باشد.
•--numa-interleave

اجرای mariadbd با حافظهٔ درهم‌تنیده (interleaved) روی تمام گره‌های NUMA.

•--open-files-limit=count

تعداد فایل‌هایی که mariadbd باید بتواند باز کند. مقدار این گزینه به ulimit -n منتقل می‌شود. توجه داشته باشید که برای کارکرد درست این مورد، باید mariadbd-safe را با کاربر root اجرا کنید!

•--pid-file=file_name

نام مسیر فایل شناسهٔ فرایند (PID).

•--plugin-dir=dir_name

دایرکتوری افزونه‌های سمت کلاینت.

•--port=port_num

شماره پورتی که سرور باید هنگام گوش دادن به اتصالات TCP/IP استفاده کند. شماره پورت باید ۱۰۲۴ یا بالاتر باشد مگر اینکه سرور توسط کاربر سیستم root اجرا شده باشد.

•--skip-kill-mariadbd

هنگام راه‌اندازی، برای خاتمه دادن به فرایندهای سرگردان mariadbd تلاش نمی‌کند. این گزینه فقط در Linux کار می‌کند.

•--socket=path

فایل سوکت یونیکس (Unix socket) که سرور باید برای گوش دادن به اتصالات محلی استفاده کند.

•--syslog, --skip-syslog

--syslog باعث ارسال پیام‌های خطا به syslog در سیستم‌هایی می‌شود که از برنامهٔ logger پشتیبانی می‌کنند. --skip-syslog استفاده از syslog را متوقف می‌کند؛ پیام‌ها در یک فایل گزارش خطا نوشته می‌شوند.

•--syslog-tag=tag

برای ثبت گزارش در syslog، پیام‌های دریافتی از mariadbd-safe و mariadbd به‌ترتیب با برچسب‌های mariadbd-safe و mariadbd نوشته می‌شوند. برای تعیین یک پسوند برای برچسب، از --syslog-tag=tag استفاده کنید که برچسب‌ها را به mariadbd-safe-tag و mariadbd-tag تغییر می‌دهد.

•--timezone=timezone.sp متغیر محیطی منطقه زمانی TZ را روی مقدار داده‌شده به گزینه تنظیم می‌کند. برای آگاهی از قالب‌های مجاز تعیین منطقه زمانی، به مستندات سیستم‌عامل خود مراجعه کنید.
•--user={user_name|user_id}

اجرای سرور mariadbd با کاربری به نام user_name یا شناسه عددی کاربر user_id. (“کاربر” در این زمینه به یک حساب کاربری ورود به سیستم اشاره دارد، نه یک کاربر MariaDB که در جدول‌های دسترسی فهرست شده باشد.)

اگر mariadbd-safe را با گزینه --defaults-file یا --defaults-extra-file برای تعیین یک فایل تنظیمات اجرا کنید، این گزینه باید نخستین گزینه‌ای باشد که در خط فرمان وارد می‌شود، در غیر این صورت فایل تنظیمات استفاده نخواهد شد. برای نمونه، این دستور از فایل تنظیمات مشخص‌شده استفاده نخواهد کرد:

mariadb> mariadbd-safe --port=port_num --defaults-file=file_name

در عوض، از دستور زیر استفاده کنید:

mariadb> mariadbd-safe --defaults-file=file_name --port=port_num

اسکریپت mariadbd-safe طوری نوشته شده است که معمولاً بتواند سروری را که از توزیع سورس یا باینری MariaDB نصب شده است راه‌اندازی کند، هرچند که این نوع توزیع‌ها معمولاً سرور را در مکان‌های متفاوتی نصب می‌کنند. mariadbd-safe انتظار دارد یکی از شرایط زیر برقرار باشد:

•سرور و پایگاه‌های داده نسبت به دایرکتوری کاری (دایرکتوری‌ای که mariadbd-safe از آن فراخوانی می‌شود) پیدا شوند. برای توزیع‌های باینری، mariadbd-safe در دایرکتوری کاری خود به دنبال دایرکتوری‌های bin و data می‌گردد. برای توزیع‌های سورس، به دنبال دایرکتوری‌های libexec و var می‌گردد. اگر mariadbd-safe را از دایرکتوری نصب MariaDB خود اجرا کنید (برای نمونه، /usr/local/mysql برای یک توزیع باینری)، این شرط باید برقرار باشد.
•اگر سرور و پایگاه‌های داده نسبت به دایرکتوری کاری پیدا نشوند، mariadbd-safe تلاش می‌کند آن‌ها را بر اساس نام مسیرهای مطلق بیابد. مکان‌های معمول شامل /usr/local/libexec و /usr/local/var هستند. مکان‌های واقعی از مقادیر پیکربندی‌شده در توزیع در زمان ساخت تعیین می‌شوند. اگر MariaDB در مکانی که هنگام پیکربندی مشخص شده نصب شده باشد، این مکان‌ها باید درست باشند.

از آنجا که mariadbd-safe تلاش می‌کند سرور و پایگاه‌های داده را نسبت به دایرکتوری کاری خود بیابد، تا زمانی که mariadbd-safe را از دایرکتوری نصب MariaDB اجرا کنید، می‌توانید یک توزیع باینری MariaDB را در هر مکانی نصب کنید:

shell> cd mysql_installation_directory
shell> bin/mariadbd-safe &

اگر mariadbd-safe حتی در صورت فراخوانی از دایرکتوری نصب MariaDB ناموفق باشد، می‌توانید گزینه‌های --ledir و --datadir را برای مشخص کردن دایرکتوری‌هایی که سرور و پایگاه‌های داده در سیستم شما در آن‌ها قرار دارند، تعیین کنید.

هنگامی که از mariadbd-safe برای شروع mariadbd استفاده می‌کنید، mariadbd-safe ترتیبی می‌دهد که پیام‌های خطا (و اعلان‌ها) از طرف خودش و از سوی mariadbd به یک مقصد مشترک ارسال شوند.

چندین گزینه در mariadbd-safe برای کنترل مقصد این پیام‌ها وجود دارد:

•--syslog: نوشتن پیام‌های خطا در syslog در سیستم‌هایی که از برنامه logger پشتیبانی می‌کنند.
•--skip-syslog: عدم نوشتن پیام‌های خطا در syslog. پیام‌ها در فایل گزارش خطای پیش‌فرض (host_name.err در دایرکتوری data)، یا در صورت استفاده از گزینه --log-error در یک فایل مشخص نوشته می‌شوند.
•--log-error=file_name: پیام‌های خطا را در فایل خطای مشخص‌شده می‌نویسد.

اگر هیچ‌کدام از این گزینه‌ها مشخص نشود، پیش‌فرض --skip-syslog است.


نکته

اگر هر دو گزینهٔ --syslog و --log-error مشخص شوند، یک هشدار صادر می‌شود و --log-error اولویت خواهد داشت.

هنگامی که mariadbd-safe پیامی می‌نویسد، اعلان‌ها به مقصد ثبت وقایع (syslog یا فایل لاگ خطا) و stdout ارسال می‌شوند. خطاها نیز به مقصد ثبت وقایع و stderr فرستاده می‌شوند.

در حالت عادی، نباید اسکریپت mariadbd-safe را ویرایش کنید. در عوض، mariadbd-safe را با استفاده از گزینه‌های خط فرمان یا گزینه‌های موجود در بخش [mariadbd-safe] از فایل گزینه‌های my.cnf پیکربندی کنید. در موارد نادر، ممکن است برای راه‌اندازی درست سرور نیاز به ویرایش mariadbd-safe باشد. با این حال، اگر این کار را انجام دهید، ممکن است نسخهٔ تغییریافتهٔ شما از mariadbd-safe در صورت ارتقای MariaDB در آینده رونویسی شود؛ بنابراین باید یک نسخهٔ رونوشت از نگارش ویرایش‌شدهٔ خود تهیه کنید تا بتوانید دوباره آن را بازگردانید.

در NetWare، mariadbd-safe یک ماژول قابل بارگذاری NetWare (به اختصار NLM) است که از اسکریپت شل اصلی Unix پورت شده است. این ماژول سرور را به شکل زیر راه‌اندازی می‌کند:

1.تعدادی بررسی‌های سیستمی و گزینه‌ها را اجرا می‌کند.
2.بررسی‌هایی را روی جدول‌های MyISAM انجام می‌دهد.
3.یک صفحهٔ کنسول برای سرور MariaDB فراهم می‌سازد.
4.mariadbd را اجرا کرده، آن را نظارت می‌کند و در صورت پایان یافتن با خطا، مجدداً آن را راه‌اندازی می‌نماید.
5.پیام‌های خطای mariadbd را به فایل host_name.err در دایرکتوری داده ارسال می‌کند.
6.خروجی صفحهٔ نمایش mariadbd-safe را به فایل host_name.safe در دایرکتوری داده می‌فرستد.

کپی‌رایت 2007-2008 MySQL AB، 2008-2010 Sun Microsystems, Inc.، 2010-2025 MariaDB Foundation

این مستندات یک نرم‌افزار آزاد است؛ شما می‌توانید آن را تنها تحت شرایط «پروانه عمومی همگانی گنو» همان‌طور که توسط بنیاد نرم‌افزارهای آزاد منتشر شده است؛ نسخه ۲ پروانه، بازتوزیع کرده و/یا تغییر دهید.

این مستندات با این امید توزیع شده است که مفید واقع شود، اما بدون هرگونه ضمانت؛ حتی بدون ضمانت ضمنی قابل فروش بودن یا مناسب بودن برای یک هدف خاص. برای جزئیات بیشتر به پروانه عمومی همگانی گنو مراجعه کنید.

شما باید به همراه این برنامه یک نسخه از پروانه عمومی همگانی گنو را دریافت کرده باشید؛ در غیر این صورت، به آدرس Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA مکاتبه کنید یا به http://www.gnu.org/licenses مراجعه نمایید.

برای اطلاعات بیشتر، لطفاً به مستندات MariaDB که به‌صورت برخط در https://mariadb.com/docs در دسترس است مراجعه کنید.

بنیاد MariaDB (http://www.mariadb.org).

5 March 2025 MariaDB 11.8