MARIADB-TEST(1) MariaDB Database System MARIADB-TEST(1)

mariadb-test - برنامه‌ای برای اجرای آزمون‌ها (mariadb-test اکنون یک پیوند نمادین به mariadb-test است)
mariadb-test-embedded - برنامه‌ای برای اجرای آزمون‌های تعبیه‌شده

mariadb-test [options] [db_name]

mariadb-test-embedded [options] [db_name]

برنامهٔ mariadb-test یک مورد آزمون را روی یک کارساز MariaDB اجرا کرده و در صورت تمایل خروجی را با یک فایل نتیجه مقایسه می‌کند. این برنامه ورودی نوشته‌شده به یک زبان آزمون ویژه را می‌خواند. معمولاً mariadb-test به جای فراخوانی مستقیم، از طریق mariadb-test-run.pl فراخوانی می‌شود.

mariadb-test-embedded مشابه است اما با پشتیبانی از کارساز تعبیه‌شدهٔ libmariadbd ساخته شده است.

ویژگی‌های mariadb-test:

•می‌تواند دستورهای SQL را برای اجرا به کارسازهای MariaDB ارسال کند
•می‌تواند دستورهای خارجی پوسته را اجرا کند
•می‌تواند بررسی کند که آیا نتیجه حاصل از یک دستور SQL یا دستور پوسته همان‌طور که انتظار می‌رفت هست یا خیر
•می‌تواند به یک یا چند کارساز مستقل mariadbd متصل شده و بین اتصالات جابه‌جا شود
•چنانچه MariaDB با پشتیبانی از libmariadbd کامپایل شده باشد، می‌تواند به یک کارساز تعبیه‌شده (libmariadbd) متصل شود. (در این حالت، نام فایل اجرایی به جای mariadb-test برابر با mariadb-test-embedded خواهد بود.)

به‌طور پیش‌فرض، mariadb-test مورد آزمون را از ورودی استاندارد می‌خواند. برای اجرای mariadb-test به این روش، معمولاً آن را به این صورت اجرا می‌کنید:

shell> mariadb-test [options] [db_name] < test_file

همچنین می‌توانید فایل مورد آزمون را با گزینهٔ --test-file=file_name مشخص کنید.

کد خروج از mariadb-test برای موفقیت برابر با 0، برای شکست 1، و در صورتی که از اجرای آزمون صرف‌نظر کند (برای مثال، اگر پس از بررسی برخی پیش‌شرط‌ها تصمیم بگیرد آزمون را اجرا نکند) 62 است.

mariadb-test از گزینه‌های زیر پشتیبانی می‌کند:

•--help, -?

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

•--basedir=dir_name, -b dir_name

دایرکتوری پایه برای آزمون‌ها.

•--character-sets-dir=path

دایرکتوری محل نصب مجموعه‌های نویسه.

•--compress, -C

فشرده‌سازی تمام اطلاعات رد و بدل شده میان کلاینت و سرور در صورتی که هر دو از فشرده‌سازی پشتیبانی کنند.

•--connect-timeout=num

می‌تواند برای تنظیم پارامتر MYSQL_OPT_CONNECT_TIMEOUT در mysql_options جهت تغییر تعداد ثانیه‌ها پیش از اتمام مهلت یک تلاش ناموفق برای اتصال استفاده شود.

•--continue-on-error

ادامه دادن آزمون حتی در صورت دریافت خطا. این گزینه عمدتاً هنگام آزمودن یک موتور ذخیره‌سازی (storage engine) برای مشاهده آنچه از یک فایل آزمون قابل اجرا است، یا برای یافتن تمام خطاهای نحوی در یک فایل آزمون بزرگِ تازه ایجاد شده مفید است.

•--cursor-protocol

استفاده از مکان‌نماها (cursors) برای prepared statementها.

•--database=db_name, -D db_name

پایگاه داده پیش‌فرض برای استفاده.

•--debug[=debug_options], -#[debug_options]

نوشتن گزارش اشکال‌زدایی (debugging log) در صورتی که MariaDB با پشتیبانی از اشکال‌زدایی ساخته شده باشد. مقدار پیش‌فرض debug_options برابر با 'd:t:S:i:O,/tmp/mariadb-test.trace' است.

•--debug-check

چاپ برخی از اطلاعات اشکال‌زدایی هنگام خروج برنامه.

•--debug-info

چاپ اطلاعات اشکال‌زدایی و آمار مصرف حافظه و CPU هنگام خروج برنامه.

•--host=host_name, -h host_name

اتصال به سرور MariaDB روی میزبان (host) داده‌شده.

•--logdir=dir_name

دایرکتوری مورد استفاده برای فایل‌های گزارش (log).

•--mark-progress

نوشتن شماره خط و زمان سپری‌شده در test_file.progress.

•--max-connect-retries=num.sp حداکثر تعداد تلاش‌ها برای برقراری اتصال هنگام وصل شدن به سرور.
•--max-connections=num

حداکثر تعداد اتصال‌های هم‌زمان سرور به ازای هر کلاینت (یعنی به ازای هر آزمون). در صورت عدم تنظیم، مقدار بیشینه 128 است. حداقل حد مجاز 8 و حداکثر آن 5120 است.

•--no-defaults

گزینه‌های پیش‌فرض را از هیچ فایل گزینه‌ای نخوانید. در صورت استفاده، این باید اولین گزینه باشد.

•--non-blocking-api

استفاده از API غیرانسدادی کلاینت برای برقراری ارتباط.

•--overlay-dir=dir_name

دایرکتوری overlay.

•--password[=password], -p[password]

گذرواژهٔ مورد استفاده هنگام اتصال به سرور. اگر از فرم کوتاه گزینه (-p) استفاده کنید، نمی‌توانید بین گزینه و گذرواژه فاصله قرار دهید. اگر مقدار password را پس از گزینهٔ --password یا -p در خط فرمان ذکر نکنید، برای وارد کردن آن اعلان دریافت خواهید کرد.

•--plugin-dir=dir_name

دایرکتوری پلاگین‌های سمت کلاینت.

•--port=port_num, -P port_num

شماره درگاه TCP/IP برای استفاده در اتصال یا 0 برای پیش‌فرض، که به ترتیب اولویت عبارت است از: my.cnf، $MYSQL_TCP_PORT، /etc/services و پیش‌فرض توکار (3306).

•--prologue=name

گنجاندن محتوای فایل مشخص‌شده پیش از پردازش محتویات فایل آزمون. فایل گنجانده‌شده باید قالبی مشابه سایر فایل‌های آزمون mariadb-test داشته باشد. این گزینه تاثیری مشابه قرار دادن دستور --source file_name به عنوان خط اول فایل آزمون دارد.

•--protocol={TCP|SOCKET|PIPE|MEMORY}

پروتکل اتصال مورد استفاده برای وصل شدن به سرور. این گزینه زمانی کاربرد دارد که سایر پارامترهای اتصال در حالت عادی باعث شوند پروتکلی غیر از پروتکل مورد نظر شما استفاده شود.

•--ps-protocol

استفاده از پروتکل prepared-statement برای برقراری ارتباط.

•--quiet.sp تمام خروجی‌های عادی را سرکوب می‌کند. این گزینه مترادفی برای --silent است.
•--record, -r

خروجی حاصل از اجرای فایل آزمایش را در فایلی که توسط گزینهٔ --result-file مشخص شده است (در صورت ارائه آن گزینه) ضبط می‌کند. استفاده از این گزینه بدون استفاده هم‌زمان از --result-file یک خطا است.

•--result-file=file_name, -R file_name

این گزینه فایل مربوط به نتایج مورد انتظار مورد آزمون را تعیین می‌کند. گزینهٔ --result-file به همراه --record، مشخص می‌کند که mariadb-test چگونه با نتایج واقعی و مورد انتظار یک مورد آزمون برخورد کند:

•اگر آزمایش هیچ نتیجه‌ای تولید نکند، mariadb-test با پیامی مبنی بر این موضوع و با وضعیت خطا خارج می‌شود، مگر اینکه --result-file داده شده باشد و فایل نام‌برده یک فایل خالی باشد.
•در غیر این صورت، چنانچه --result-file داده نشده باشد، mariadb-test نتایج آزمایش را به خروجی استاندارد ارسال می‌کند.
•در صورت ارائهٔ --result-file بدون --record، mariadb-test نتایج مورد انتظار را از فایل داده‌شده می‌خواند و آن‌ها را با نتایج واقعی مقایسه می‌کند. اگر نتایج مطابقت نداشته باشند، mariadb-test یک فایل .reject در همان دایرکتوری فایل نتایج ایجاد می‌کند، تفاوت (diff) میان دو فایل را در خروجی نمایش می‌دهد و با خطا خارج می‌شود.
•با ارائهٔ هر دو گزینهٔ --result-file و --record، mariadb-test فایل ارائه‌شده را با نوشتن نتایج واقعی آزمون در آن به‌روزرسانی می‌کند.
•--result-format-version=#

نسخهٔ قالب فایل نتیجه جهت استفاده.

•--server-arg=value, -A value

آرگومان را به‌عنوان یک آرگومان به سرور توکار (embedded server) ارسال می‌کند. برای مثال، --server-arg=--tmpdir=/tmp یا --server-arg=--core. حداکثر تا ۶۴ آرگومان می‌توان تعیین کرد.

•--server-file=file_name, -F file_name

آرگومان‌های سرور توکار را از فایل ارائه‌شده می‌خواند. این فایل باید در هر سطر شامل یک آرگومان باشد.

•--silent, -s

تمام خروجی‌های عادی را سرکوب می‌کند.

•--sleep=num, -T num

باعث می‌شود تمام دستورهای sleep در فایل آزمون، به مدت num ثانیه به خواب بروند (توقف کنند). این گزینه بر دستورهای real_sleep تأثیری ندارد.

می‌توان از مقدار 0 برای این گزینه استفاده کرد، که عملاً دستورهای sleep را در آزمون غیرفعال می‌کند.

•--socket=path, -S path

فایل سوکت مورد استفاده هنگام اتصال به localhost (که میزبان پیش‌فرض است).

•--sp-protocol

اجرای دستورهای DML درون یک روال ذخیره‌شده (stored procedure). برای هر دستور DML، mariadb-test به جای اجرای مستقیم آن، یک روال ذخیره‌شده ایجاد و فراخوانی می‌کند که دستور را اجرا نماید.

•--ssl

فعال‌سازی SSL برای اتصال (به‌طور خودکار با دیگر پرچم‌ها فعال می‌شود). غیرفعال‌سازی با --skip-ssl.

•--ssl-ca=name

فایل CA در قالب PEM (مستندات OpenSSL بررسی شود، مستلزم --ssl است).

•--ssl-capath=name

دایرکتوری CA (مستندات OpenSSL بررسی شود، مستلزم --ssl است).

•--ssl-cert=name

گواهی X509 در قالب PEM (مستندات OpenSSL بررسی شود، مستلزم --ssl است).

•--ssl-cipher=name

رمز (cipher) SSL مورد استفاده (مستندات OpenSSL بررسی شود، مستلزم --ssl است).

•--ssl-key=name

کلید X509 در قالب PEM (مستندات OpenSSL بررسی شود، مستلزم --ssl است).

•--ssl-crl=name

فهرست ابطال گواهی (مستندات OpenSSL بررسی شود، مستلزم --ssl است).

•--ssl-crlpath=name

مسیر فهرست ابطال گواهی (مستندات OpenSSL بررسی شود، مستلزم --ssl است).

•--ssl-verify-server-cert

مقدار “Common Name” سرور در گواهی آن را در برابر نام میزبان استفاده‌شده هنگام اتصال بررسی و اعتبارسنجی می‌کند. این گزینه به‌طور پیش‌فرض غیرفعال است.

•--suite-dir=dir_name

دایرکتوری مجموعه آزمون (suite).

•--tail-lines=nn

مشخص می‌کند در صورتی که آزمون به دلیل ناموفق بودن یک دستور SQL با شکست مواجه شود، چه تعداد خط از نتیجه در خروجی گنجانده شود. مقدار پیش‌فرض 0 است، به این معنی که هیچ خطی از نتیجه چاپ نمی‌شود.

•--test-file=file_name, -x file_name

خواندن ورودی آزمون از این فایل. پیش‌فرض، خواندن از ورودی استاندارد است.

•--timer-file=file_name, -m file_name

در صورت تعیین شدن، مدت‌زمان صرف‌شده برای اجرای آزمون برحسب میکروثانیه در این فایل نوشته خواهد شد. این گزینه توسط mariadb-test-run.pl برای گزارش‌دهی استفاده می‌شود.

•--tmpdir=dir_name, -t dir_name

دایرکتوری موقتی که فایل‌های سوکت در آن ایجاد می‌شوند.

•--user=user_name, -u user_name

نام کاربری MariaDB برای استفاده هنگام اتصال به سرور.

•--verbose, -v

حالت پرجزئیات. اطلاعات بیشتری را درباره کارهایی که برنامه انجام می‌دهد چاپ می‌کند.

•--version, -V

نمایش اطلاعات نسخه و خروج.

•--view-protocol

هر دستور SELECT درون یک نما (view) قرار می‌گیرد.

حق نشر © 2007, 2010 متعلق به Oracle و/یا شرکت‌های وابسته به آن، 2010-2025 MariaDB Foundation.

این مستندات یک نرم‌افزار آزاد است؛ شما تنها تحت شرایط مجوز عمومی همگانی گنو (GNU General Public License) همان‌گونه که توسط بنیاد نرم‌افزار آزاد (Free Software Foundation) منتشر شده است—نسخه ۲ این مجوز—می‌توانید آن را بازتوزیع کرده و/یا تغییر دهید.

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

شما باید به همراه این برنامه نسخه‌ای از GNU General Public License دریافت کرده باشید؛ در غیر این صورت، به نشانی 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 Foundation (http://www.mariadb.org).

5 March 2025 MariaDB 11.8