Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

बाइनरी टैरबॉल से MySQL 8 सेट करें

इस लेख में, हम बाइनरी टैरबॉल MySQL इंस्टालेशन पर चर्चा करेंगे। हम बाइनरी टैरबॉल का उपयोग करके MySQL 8 की स्थापना पर चर्चा करेंगे और बाइनरी टैरबॉल का उपयोग करके CentOS 7 पर MySQL 8 स्थापित करेंगे। बाइनरी टैरबॉल आधारित इंस्टॉलेशन के अपने फायदे और नुकसान हैं, हम इसके माध्यम से जाएंगे। बाइनरी टैरबॉल से इंस्टॉलेशन लिनक्स वितरण या वितरण द्वारा उपयोग किए जाने वाले इनिट सिस्टम से स्वतंत्र है। इसका मतलब है कि एक ही स्थापना विधि उदाहरण के लिए आरपीएम और मृत आधारित सिस्टम पर काम करती है, लेकिन यह जनरल 2 जैसे अधिक विदेशी वितरण पर भी काम करेगी। मैकोज़ के लिए एक बाइनरी टैरबॉल भी उपलब्ध है और इंस्टॉलेशन प्रक्रिया बहुत अलग नहीं है, इस विधि को अधिक मैन्युअल शब्द की आवश्यकता है। MySQL 5.7 में mysql_install_db स्क्रिप्ट को हटा दिया गया था और इसे MySQL 8 से हटा दिया गया है। प्रारंभिक डेटाबेस निर्माण mysqld -initialize कमांड के साथ किया जा सकता है। अब जब हम मैन्युअल रूप से MySQL इंस्टॉल करेंगे तो हम खाली डेटाबेस बनाने के लिए mysqld -initialize कमांड का उपयोग करेंगे।

पहले कुछ सफाई करते हैं। हम mariadb-libs के बहुत पुराने संस्करण को हटा देंगे जो my.cnf प्रदान करता है जो हमारे साथ विरोध करेगा।

Mariadb libs निकालें:

[example@sqldat.com ~]# sudo yum remove -y mariadb-libs

MySQL समुदाय सर्वेक्षण 8.0 का स्रोत टैरबॉल डाउनलोड करें

[example@sqldat.com ~]# curl -L -O https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0
100 575M 100 575M 0 0 7726k 0 0:01:16 0:01:16 --:--:-- 8516k
[example@sqldat.com ~]# ll
-rw-r--r--. 1 root root 603019898 Jul 23 10:31 mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz

टारबॉल डाउनलोड नहीं हुआ है तो चलिए इसे usr/लोकल में अनपैक करते हैं

[example@sqldat.com ~]# sudo tar xvfz mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz -C /usr/local/

पूर्व-अनुरोधों को पूरा करना

चलो libaio स्थापित करें।

[example@sqldat.com ~]# sudo yum -y install libaio
Create a MySQL group, this is normally done by the packages but because we are installing it manually from binary tarball now we need to do it.
[example@sqldat.com ~]# sudo groupadd mysql

आइए आप एक MySQL उपयोगकर्ता बनाएं

[example@sqldat.com ~]# sudo useradd -r -g mysql -s /bin/false mysql

सत्यापित करें कि mysql उपयोगकर्ता मौजूद है

[example@sqldat.com ~]# getent passwd | grep mysql
mysql:x:988:1001::/home/mysql:/bin/false

मिल गया /usr/स्थानीय और एक सिमलिंक बनाएं और फिर इसे जांचें

[example@sqldat.com ~]# cd /usr/local
[example@sqldat.com local]# sudo ln -s mysql-8.0.11-linux-glibc2.12-x86_64 mysql
[example@sqldat.com local]# ls -la mysql
lrwxrwxrwx. 1 root root 35 Jul 23 15:08 mysql -> mysql-8.0.11-linux-glibc2.12-x86_64

MySQL फाइल डायरेक्टरी बनाएं जो /usr/लोकल/

में खड़े रहने के दौरान डेटा सेट के स्वामित्व और अनुमतियों को बनाए रखेगी
[example@sqldat.com local]# sudo mkdir mysql-files
[example@sqldat.com local]# sudo chown mysql:mysql mysql-files
[example@sqldat.com local]# sudo chmod 750 mysql-files

MySQL प्रारंभ करें

Mysql निर्देशिका पर जाएँ और mysqld को इनिशियलाइज़ करें, पुराने संस्करणों में इसे mysql_installed_db

. कहा जाता था
[example@sqldat.com local]# cd mysql
[example@sqldat.com mysql]# sudo ./bin/mysqld --initialize --user=mysql
2020-07-23T12:12:10.028247Z 0 [System] [MY-013169] [Server] /usr/local/mysql-8.0.11-linux-glibc2.12-x86_64/bin/mysqld (mysqld 8.0.11) initializing of server in progress as process 25014
2020-07-23T12:12:15.470538Z 5 [Note] [MY-010454] [Server] A temporary password is generated for example@sqldat.com: Hqn+jK6lfzNS
2020-07-23T12:12:18.875370Z 0 [System] [MY-013170] [Server] /usr/local/mysql-8.0.11-linux-glibc2.12-x86_64/bin/mysqld (mysqld 8.0.11) initializing of server has completed

ध्यान दें कि अस्थायी रूट पासवर्ड उत्पन्न होता है जो मेरे मामले में है (example@sqldat.com:Hqn+jK6lfzNS)

init स्क्रिप्ट को सपोर्ट-फाइल्स से /etc/init.d

में कॉपी करें
[example@sqldat.com mysql]# sudo cp ./support-files/mysql.server /etc/init.d/

हमारे द्वारा अभी कॉपी की गई init फ़ाइल के साथ mysql सर्वर प्रारंभ करें

[example@sqldat.com mysql]# sudo /etc/init.d/mysql.server start
Starting MySQL.Logging to '/usr/local/mysql/data/localhost.localdomain.err'.
. SUCCESS!

अब पहले उत्पन्न अस्थायी पासवार्ड प्रदान करके ro mysql को कनेक्ट करें

[example@sqldat.com mysql]# ./bin/mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.11
Copyright (c) 2000, 2018, 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.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>

आइए रूट उपयोगकर्ता के लिए अस्थायी पासवार्ड को बदलें।

mysql> alter user 'root'@'localhost' identified by 'My_root_pass1!';
Query OK, 0 rows affected (0.07 sec)

सॉकेट फ़ाइल स्थान की जाँच करें:

mysql> show variables like 'socket';
+---------------+-----------------+
| Variable_name | Value |
+---------------+-----------------+
| socket | /tmp/mysql.sock |
+---------------+-----------------+
1 row in set (0.01 sec)

जब आप MySQL के साथ काम कर रहे हों तो क्लाइंट प्रोग्राम का पथ नाम हमेशा टाइप करने से बचने के लिए, आप /usr/local/mysql/bin निर्देशिका को अपने PATH चर में जोड़ सकते हैं:

[example@sqldat.com mysql]# export PATH=$PATH:/usr/local/mysql/bin
[example@sqldat.com mysql]# ps -ef | grep mysql
root 25130 1 0 15:16 pts/1 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/localhost.localdomain.pid
mysql 25215 25130 1 15:16 pts/1 00:00:42 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=localhost.localdomain.err --pid-file=/usr/local/mysql/data/localhost.localdomain.pid
root 26171 21375 0 16:21 pts/1 00:00:00 mysql -uroot -px xxxxxxxxxxxx
root 26191 25365 0 16:23 pts/2 00:00:00 grep --color=auto mysq

No

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एकल SQL क्वेरी में एकाधिक पंक्तियाँ कैसे सम्मिलित करें - सप्ताह का साक्षात्कार प्रश्न #069

  2. डेटाबेस तालिका डेटा को संशोधित करने में एक MySQL क्वेरी सफल होने पर परीक्षण कैसे करें?

  3. MySql पंक्ति को स्तंभ में और स्तंभ को पंक्ति में स्थानांतरित करता है

  4. MySQL PHP पीडीओ में संग्रहित प्रक्रिया से चर को पुनः प्राप्त करता है

  5. पीएचपी घातक त्रुटि:कक्षा 'पीडीओ' नहीं मिला