產環境部署node記錄(三): centOS 7 mySQL和mongoDB的安裝

來源:互聯網
上載者:User

標籤:href   server   with   帳號   alt   關係   exec   auth   mongodb執行個體   

【mySQL的安裝】:

CentOS7預設資料庫是mariadb,現在來安裝mySQL


1.下載安裝包 這裡下載了四個安裝包,後面會用到

yum -y install perl perl-devel autoconf libaio

 

2.將安裝包移動到 /usr/local/ 下 

mv /root/mysql-5.7.19-1.el7.x86_64.rpm-bundle.tar /usr/local/

 

 

 3.解壓

tar -xvf mysql-5.7.19-1.el7.x86_64.rpm-bundle.tar

 

 

 4.安裝

rpm -ivh mysql-community-common-5.7.19-1.el7.x86_64.rpm

 

5.原有的軟體mariadb-devel 和 mariadb 有衝突,刪除

rpm -qa | grep mariadb#mariadb-libs-5.5.52-1.el7.x86_64rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64

 

6.再次開始安裝

rpm -ivh mysql-community-common-5.7.19-1.el7.x86_64.rpm

 

rpm -ivh mysql-community-libs-5.7.19-1.el7.x86_64.rpm

 

rpm -ivh mysql-community-embedded-5.7.19-1.el7.x86_64.rpm

 

rpm -ivh mysql-community-devel-5.7.19-1.el7.x86_64.rpm

 

rpm -ivh mysql-community-embedded-devel-5.7.19-1.el7.x86_64.rpm

 

rpm -ivh mysql-community-client-5.7.19-1.el7.x86_64.rpm

 

5.資料庫初始化 為了保證資料庫目錄為與檔案的所有者為 mysql 登陸使用者,如果你是以 root 身份運行 mysql 服務,需要執行下面的命令初始化 
mysqld --initialize --user=mysqlmysqld --initialize-insecure --user=mysql

 

另外 --initialize 選項預設以“安全”模式來初始化,則會為 root 使用者產生一個密碼並將該密碼標記為到期,登陸後你需要設定一個新的密碼,而使用 --initialize-insecure 命令則不使用安全模式,則不會為 root 使用者產生一個密碼。 這裡示範使用的 --initialize 初始化的,會產生一個 root 賬戶密碼,密碼在log檔案裡,藍色地區的就是自動產生的密碼 
cat /var/log/mysqld.log

 

 6.啟動資料庫

systemctl start mysqld.servicemysql -uroot -p

 

 

 安裝期間除了若干個錯誤:

【錯誤一】.啟動資料庫時報錯  ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)

解決--- 這個錯誤是由密碼錯誤引起,解決的辦法自然就是重設密碼。     重設密碼的第一步就是跳過MySQL的密碼認證過程,方法如下 
#vi /etc/my.cnf
 在[mysqld]後面任意一行添加“skip-grant-tables”用來跳過密碼驗證的過程儲存文檔並退出:#:wq! 需要重啟MySQL

   接下來就是用sql來修改root的密碼

mysql> use mysql;mysql> update user set password=password("你的新密碼") where user="root";

 

  【錯誤二】   這時又報錯了:  ERROR 1054 (42S22): Unknown column ‘password‘ in ‘field list‘ 原因:  原來是mysql資料庫下已經沒有password這個欄位了,password欄位改成了authentication_string 所以更改語句替換為update mysql.user set authentication_string=password(‘root‘) where user=‘root‘ ; 

   繼續運行

ALTER USER ‘root‘@‘localhost‘IDENTIFIED BY ‘123456‘;

 

 

【錯誤三】 ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement 這個時候我們只需要flush privileges 一下,再繼續更改密碼就行了 

 

 7.重新整理、退出

mysql> flush privileges;mysql> quit;

 

 

8. 編輯my.cnf,去掉剛才添加的內容,然後重啟MySQL。

vi /etc/my.cnf

 

 

 重啟並使用新密碼登入

 

 至此資料庫安裝完成,並可以成功登陸。

 

 

9.本地串連資料庫並匯入sql檔案

開啟你自己電腦上的Navicat,建立串連

 

 

輸入IP,連接埠3306;輸入帳號密碼,登陸,發現串連錯誤。。。。 繼續解決: mysql 遠端連線資料庫的二種方法一、串連遠端資料庫:1、顯示密碼

如:MySQL 串連遠端資料庫(192.168.5.116),連接埠“3306”,使用者名稱為“root”,密碼“123456”

C:/>mysql -h 192.168.5.116 -P 3306 -u root -p1234562、隱藏密碼

如:MySQL 串連本機資料庫,使用者名稱為“root”,

C:/>mysql -h localhost -u root -p 
Enter password:二、配置mysql允許遠程連結    預設情況下,mysql帳號不允許從遠程登陸,只能在localhost登入。本文提供了二種方法設定mysql可以通過遠程主機進行串連。一、改表法

    在localhost登入mysql後,更改 "mysql" 資料庫裡的 "user" 表裡的 "host" 項,將"localhost"改稱"%"

例如:  #mysql -u root -p   Enter password:    ……   mysql>

  mysql>update user set host = ‘%‘ where user = ‘root‘;

  mysql>select host, user from user;

二、授權法

    例如: 你想myuser使用mypassword(密碼)從任何主機串連到mysql伺服器的話。

  mysql>GRANT ALL PRIVILEGES ON *.* TO ‘myuser‘@‘%‘IDENTIFIED BY ‘mypassword‘ WITH GRANT OPTION;

  如果你想允許使用者myuser從ip為192.168.1.6的主機串連到mysql伺服器,並使用mypassword作為密碼

  mysql>GRANT ALL PRIVILEGES ON *.* TO ‘myuser‘@‘192.168.1.3‘IDENTIFIED BY

  ‘mypassword‘ WITH GRANT OPTION;

   mysql>FLUSH PRIVILEGES

  使修改生效,就可以了

常見問題: 
1、在採用法二授權法之後,無法在本地登入mysql(如:#mysql -u root -p -h 192.168.5.116
Enter password: 
ERROR 1045 (28000): Access denied for user ‘root‘@‘loadb116‘ (using password: YES)
上例中loadb116是主機名稱.
解決方案: 
1、這時可以使用:mysql  -u root -p 登入,進入到mysql後。
mysql> grant all privileges on *.* to ‘root‘@‘loadb116‘ 
       identified by ‘123456‘ with grant option; 
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges; 
Query OK, 0 rows affected (0.00 sec)
2、在本地使用ip地址登入
# mysql -u root -p -h 192.168.5.116 
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or /g.
Your MySQL connection id is 60
Server version: 5.1.45 MySQL Community Server (GPL)

Type ‘help;‘ or ‘/h‘ for help. Type ‘/c‘ to clear the buffer.

mysql> 好了,搞定,終於能串連上了,可以匯入表了   刪除mySQL查看安裝了那些mysql的包
rpm -qa | grep -i mysql

使用命令刪除,有依賴關係,需要根據依賴關係倒序刪除  如果刪除不了 後面加 --nodeps

rpm -e MySQL-client-5.1.49-1.glibc23............

 查看是否有mySQL服務

chkconfig --list | grep -i mysql

 

刪除mysql服務

[[email protected] ~]# chkconfig --del mysql

c)刪除分散mysql檔案夾

[[email protected] ~]# whereis mysql
mysql: /usr/lib/mysql /usr/share/mysql

分別刪除

[[email protected] lib]# rm -rf /usr/lib/mysql/
[[email protected] lib]# rm -rf /usr/share/mysql

通過以上幾步,mysql應該已經完全卸載乾淨了 【mongoDB】根據官網教程: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/ 首先建立一個 mongodb-org-3.4.repo檔案 

將檔案移動到  /etc/yum.repos.d/下

進入檔案並使用 vi 編輯檔案

 

 

 

按下 esc 然後按 i 進入插入模式 ,複製下面代碼寫入檔案

[mongodb-org-2.6]name=MongoDB 2.6 Repositorybaseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/gpgcheck=0enabled=1

 

安裝最新的穩定版本的MongoDB

sudo yum install -y mongodb-org

 

 

 

MongoDB執行個體預設儲存其資料檔案 /var/lib/mongo 及其記錄檔 /var/log/mongodb,並使用 mongod 使用者帳戶運行。您可以在其中指定備用日誌和資料檔案目錄 /etc/mongod.conf。  啟動mongodb: 
sudo service mongod start

驗證mongodb已經啟動成功通過檢查  /var/log/mongodb/mongod.log 下的日誌來驗證是否啟動成功 查看連接埠和綁定的IP 進入   /etc/mongod.conf 檔案查看 

 

 查看日誌 /var/log/mongodb/mongod.log

cd  /var/log/mongodb/cat mongod.log

 

伺服器重啟的時候自動啟動mongodb:

sudo chkconfig mongod on

 停止mongodb服務:

sudo service mongod stop

 重啟mongodb:

sudo service mongod restart

 

產環境部署node記錄(三): centOS 7 mySQL和mongoDB的安裝

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.