مقدمه
MySQL یک سیستم مدیریت پایگاه داده منبع باز است که معمولاً به عنوان بخشی از هسته های معروف LEMP (Linux ، Nginx ، MySQL / MariaDB ، PHP / Python / Perl) نصب می شود. برای مدیریت داده های خود از یک پایگاه داده رابطه ای و SQL (Structured Query Language) استفاده می کند.
ما در این آموزش نحوه نصب MySQL نسخه ۵.۷ را بر روی سرور CentOS 7 توضیح می دهیم.
پیش نیازها
برای دنبال کردن این آموزش ، به موارد زیر احتیاج دارید:
یک CentOS 7 با یک کاربر غیر روت با سطح دسترسی سودو. درباره راه اندازی کاربر با این امتیازات می توانید در راهنمای اولیه سرور با راهنمای CentOS 7 اطلاعات بیشتری کسب کنید.
مرحله ۱ – نصب MySQL
همانطور که در میدانید ، دستور Yum برای نصب MySQL در واقع MariaDB را نصب می کند. برای نصب MySQL ، باید از مخازن MySQL Yum Repository که بسته های MySQL را ارائه می دهد بازدید کنیم.
در یکی از مرورگر های خود ، این مورد ببینید :
https://dev.mysql.com/downloads/repo/yum/
لطفا توجه داشته باشید که پیوندهای برجسته بارگیری مستقیماً به فایل ها دسترسی پیدا نمیکند. درعوض ، آنها به صفحه بعدی منتهی می شوند که از شما برای ورود به سیستم یا ثبت نام در یک حساب دعوت شده است. اگر نمی خواهید یک حساب کاربری ایجاد کنید ، می توانید متن “نه متشکرم ، فقط بارگیری من را شروع کنید” را پیدا کنید ، سپس کلیک راست کرده و محل پیوند را کپی کنید ، یا می توانید شماره نسخه را در دستورات زیر ویرایش کنید.
نسخه مورد نظر را بیابید و آن را در صورت لزوم در لینک زیر به روز رسانی کنید:
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
پس از ذخیره فایل rpm ، با اجرای md5sum و مقایسه آن با مقدار MD5 مربوطه ذکر شده در سایت ، صحت بارگیری را بررسی خواهیم کرد:
md5sum mysql57-community-release-el7-9.noarch.rpm
Output
۱a29601dc380ef2c7bc25e2a0e25d31e mysql57-community-release-el7-9.noarch.rpm
این خروجی را با مقدار مناسب MD5 در سایت مقایسه کنید:
اکنون که تأیید کردیم فایل خراب یا تغییر نکرده است ، بسته را نصب خواهیم کرد:
sudo rpm -ivh mysql57-community-release-el7-9.noarch.rpm
این دو مخازن جدید MySQL yum را اضافه می کند و اکنون می توانیم از آنها برای نصب سرور MySQL استفاده کنیم:
sudo yum install mysql-server
برای تأیید اینکه می خواهید ادامه دهید ، y را فشار دهید. از آنجا که ما پکیج را فقط اضافه کرده ایم ، از ما خواسته می شود که کلید GPG آن را نیز بپذیریم. y را فشار دهید تا بارگیری شود و نصب کامل شود.
مرحله ۲ – شروع MySQL
ما این سرویس را با دستور زیر استارت می کنیم:
sudo systemctl start mysqld
systemctl نتیجه همه دستورات مدیریت سرویس ها را نمایش نمی دهد ، بنابراین برای اطمینان از موفقیت امیز بودن دیتا بیس ، از دستور زیر استفاده خواهیم کرد:
sudo systemctl status mysqld
اگر MySQL با موفقیت شروع شده باشد ، خروجی باید حاوی Active: فعال (در حال اجرا) باشد و خط آخر باید مانند این باشد:
Dec 01 19:02:20 centos-512mb-sfo2-02 systemd[1]: Started MySQL Server.
توجه: MySQL هنگام نصب بطور خودکار فعال می شود تا هنگام بوت شدن سرور استارت شود. می توانید این رفتار پیش فرض را با کامند زیر تغییر دهید:
sudo systemctl disable mysqld
در طی مراحل نصب ، یک رمز عبور موقت برای کاربر روت MySQL ایجاد می شود. با این دستور آن را در mysqld.log قرار دهید:
sudo grep 'temporary password' /var/log/mysqld.log
Output
۲۰۱۶-۱۲-۰۱T00:22:31.416107Z 1 [Note] A temporary password is generated for root@localhost: mqRfBU_3Xk>r
رمز ورود را یادداشت کنید ، که در مرحله بعدی برای ایمن سازی نصب به آن نیاز خواهید داشت و جایی که مجبور به تغییر آن شدید از آن استفاده کنید. پالیسی رمز پیش فرض به ۱۲ حرف ، حداقل با یک حرف بزرگ ، یک حرف کوچک ، یک عدد و یک حرف خاص نیاز دارد.
مرحله ۳ – پیکربندی MySQL
برای اجرای اسکریپت امنیتی از این دستور استفاده کنید:
sudo mysql_secure_installation
با این کار رمز عبور پیش فرض root را از شما می خواهد. به محض ورود به آن ، ملزم به تغییر آن خواهید شد:
Output
The existing password for the user account root has expired. Please set a new password.
New password:
یک رمز ورود ۱۲ حرفی جدید وارد کنید که حداقل شامل یک حرف بزرگ ، یک حرف کوچک ، یک عدد و یک حرف خاص باشد. وقتی از شما خواسته شد دوباره آن را وارد کنید:
درباره قدرت رمز ورود جدید خود بازخورد دریافت خواهید کرد و سپس بلافاصله از شما خواسته می شود آن را دوباره تغییر دهید. از آنجا که این کار را کردید ، می توانید با اطمینان بگویید No
Output
Estimated strength of the password: 100
Change the password for root ? (Press y|Y for Yes, any other key for No) :
پس از رد درخواست تغییر مجدد گذرواژه ، Y را فشار داده و سپس ENTER را برای همه سوالات بعدی فشار می دهیم تا کاربران ناشناس حذف شوند ، ورود به سیستم از راه دور را از بین ببرید ، پایگاه داده آزمون را حذف کرده و به آن دسترسی پیدا کنید و دسترسی جداول را بارگیری کنید.
حالا که نصب را ایمن کردیم ، بیایید آن را تست کنیم.
مرحله ۴ – آزمایش MySQL
ما می توانیم با اتصال به ابزار mysqladmin ، این امکان را به شما میدهد که دستورات لازم را اجرا کنید ، نصب خود را تأیید کرده و در مورد آن اطلاعات کسب کنیم. از دستور زیر برای اتصال به MySQL به عنوان root (-u root) ، درخواست رمز عبور (-p) و بازگرداندن نسخه استفاده کنید:
mysqladmin -u root -p version
شما باید خروجی مشابه این را مشاهده کنید:
Output
mysqladmin Ver 8.42 Distrib 5.7.16, for Linux on x86_64
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Server version 5.7.16
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/lib/mysql/mysql.sock
Uptime: 2 min 17 sec
Threads: 1 Questions: 6 Slow queries: 0 Opens: 107 Flush tables: 1 Open tables: 100 Queries per second avg: 0.043
این نشان می دهد نصب شما با موفقیت انجام شده است.
نتیجه
در این آموزش ، MySQL را بر روی یک سرور CentOS 7 نصب و امن کرده ایم. برای کسب اطلاعات بیشتر در مورد استفاده از MySQL ، این راهنمای یادگیری بیشتر در مورد دستورات MySQL می تواند به شما کمک کند. همچنین ممکن است برخی اقدامات امنیتی اضافی را نیز در نظر داشته باشید.