包含centos7中安裝mysql數據庫的詞條

本文目錄一覽:

如何在centos7安裝mysql

1

首先要確保電腦正常上網,才能通過yum安裝。

執行yum install mysql進行安裝。並在提示時輸入y。

然後系統會自動尋找安裝包,並進行安裝。下圖顯示已成功安裝完畢。

安裝完畢後,嘗試啟動數據庫。

系統提示找不到這個服務。再次看一下安裝的包:

#rpm -qa |grep mysql

命令返回空,說明剛才沒有安裝成功。只好再次安裝了。不過這次我們在命令後面加上*號。

看圖,需要安裝的包還真多!安裝完成後,卻發現只安裝了JDBC和ODBC驅動。

我們在軟件庫中搜一下帶mysql關鍵字的軟件包:

返回的結果顯示,軟件庫中根本就沒有mysql軟件包。這個時候,迷茫的開始查資料,資料顯示在Centos7中用MariaDB代替了mysql數據庫。好吧!那我們來安裝MariaDB數據庫吧!

操做方法同上,只不過在命令行里,把mysql改成了mariadb。

安裝包一共59M

安裝完成。

查看安裝之後的包:

12

根據資料,mariadb數據庫的啟動命令是:

systemctl start mariadb #啟動MariaDB

systemctl stop mariadb #停止MariaDB

systemctl restart mariadb #重啟MariaDB

systemctl enable mariadb #設置開機啟動

我執行以上命令,沒有任何返回值。看來得研究一下mariadb數據了。

如何在centos7中安裝mysql

1、Centos 7 默認不支持mysql (都是因為錢),所以centos 7默認支持的是mariadb

何為mariadb?

MariaDB數據庫管理系統是MySQL的一個分支,主要由開源社區在維護,採用GPL授權許可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能輕鬆成為MySQL的代替品。在存儲引擎方面,使用XtraDB來代替MySQL的InnoDB。 MariaDB由MySQL的創始人Michael Widenius主導開發,他早前曾以10億美元的價格,將自己創建的公司MySQL AB賣給了SUN,此後,隨着SUN被甲骨文收購,MySQL的所有權也落入Oracle的手中。MariaDB名稱來自Michael Widenius的女兒Maria的名字。

說到這,我個人強烈推薦大家開始學習MariaDB,當然由於我們一些項目還是要用mysql的,所以不能放棄。真不難學。

接下來 我講一下centos 7對mysql的安裝過程

1、如果一定要在centos 7上安裝mysql ,需要卸載MariaDB,否則會衝突。

2、執行這個命令:rpm -qa | grep mariadb

3、這時會出現一些列表,都是mariadb的包,接下來我們要幹掉

4、執行如下命令rpm -e –nodeps mariadb-libs-XXXXX.x86_64 (注意我這裡的xxxx, 要根據第三步出現的列表 ,挨個干)

5、幹完後,就可以安裝mysql了。

6、去度娘搜索mysql的rpm包,一大把。我用的是5.6.22 .(找不到的,問我要)

ww

這裡需要安裝 至少2個,1個是mysql-server-xxxx.rpm (這個就是服務端), 還有一個是mysql-client-xxxx.rpm(這個是客戶端,不想裝?不裝的話你沒法初始化root密碼,求懂)

7、執行 rpm -ivh 「上面兩個文件名 」

8、這樣就裝好了。

9、然後 執行:service mysql start (如果OK,說明裝好了)

10、再然後執行:service mysql stop (不要問為什麼,因為默認root沒有密碼,你進不去,所以接下來我們要繞過密碼登錄)

11、執行這個命令:mysqld_safe –user=mysql –skip-grant-tables –skip-networking mysql -u root mysql (也就是,老子不用密碼直接登錄,這時mysql服務必須關閉狀態)

12、然後執行這個命令:UPDATE user SET Password=PASSWORD(『XXXXX』) where USER=』root』; 這裡就是對root賬號初始化密碼,xxx自行改,不要忘了。忘掉的話就要用第11步初始化(誰說沒有密碼就不能進mysql?)

13、然後執行 flush privileges; (注意不要忘記最後的分號,必須有,不要問為什麼)

14、然後輸入quit; 退出mysql客戶端。

15、重新啟動mysql,命令:service mysql start

16、然後用root賬號登錄 命令:mysql -u root -p (接下來會提示你輸入密碼,此時屏幕不可見,不要以為死機了)

17、這時隨便執行一個sql,譬如 show databases;

18、這時會報錯,大約是You must SET PASSWORD before executing this statement .其實就是我們常見的:第一次登錄需要改密碼,

19、那我們就改一改吧,反正不會懷孕

20、執行 SET PASSWORD = PASSWORD(『xxxx』); 注意分號,也可以把密碼跟上面搞得一樣。

21、然後再去執行 一些sql,看看對不對。對的話quit;

22、最後,我們最好吧mysql重啟一下. service mysql restart

23、然後配置遠程可以連接(注意剛才我們都是在本機操作的哦~~~~)

24、依然mysql -u root -p 輸入密碼後登入

25、執行:GRANT ALL PRIVILEGES ON *.* TO 『root』@』%』 IDENTIFIED BY 『這裡填你的密碼』 WITH GRANT OPTION; (這裡root@後面的百分號代表全宇宙都可以連接你的mysql,只要知道密碼) ,如果是僅僅允許某個IP連接,那麼把這個百分號換成某個ip即可

26 、FLUSH PRIVILEGES; 並且退出

27、保險起見,再重啟mysql服務

好吧,OK了。接下來大家可以用navicate 去連接啦

centos7怎樣安裝mysql服務器

本人博客供參考

網頁鏈接

下載mysql源安裝包shell wget  

安裝mysql源shell yum localinstall mysql57-community-release-el7-8.noarch.rpm 

檢查mysql源是否安裝成功 

yum repolist enabled | grep 「mysql.-community.」 

 

安裝MySQL 

yum install mysql-community-server 

啟動MySQL服務 

shell systemctl start mysqld 

查看MySQL的啟動狀態 

shell systemctl status mysqld 

開機啟動 

shell systemctl enable mysqld 

shell systemctl daemon-reload 

修改root本地登錄密碼 

mysql安裝完成之後,在/var/log/mysqld.log文件中給root生成了一個默認密碼。通過下面的方式找到root默認密碼,然後登錄mysql進行修改: 

shell grep 『temporary password』 /var/log/mysqld.log 

 

shell mysql -uroot -p 

mysql ALTER USER 『root』@』localhost』 IDENTIFIED BY 『MyNewPass4!』; 

或者: 

mysql set password for 『root』@』localhost』=password(『MyNewPass4!』); 

注意:mysql5.7默認安裝了密碼安全檢查插件(validate_password),默認密碼檢查策略要求密碼必須包含:大小寫字母、數字和特殊符號,並且長度不能少於8位。否則會提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements錯誤 

添加遠程登錄用戶 

默認只允許root帳戶在本地登錄,如果要在其它機器上連接mysql,必須修改root允許遠程連接,或者添加一個允許遠程連接的帳戶,為了安全起見,我添加一個新的帳戶: 

mysql GRANT ALL PRIVILEGES ON . TO 『yangxin』@』%』 IDENTIFIED BY 『Yangxin0917!』 WITH GRANT OPTION;

以上部分個人實踐過,以下內容待實踐

數據庫存emoji 表情問題

mysql SHOW VARIABLES WHERE Variable_name LIKE 『character_set_%』 OR Variable_name LIKE 『collation%』; 

+————————–+——————-+ 

| Variable_name | Value | 

+————————–+——————-+ 

| character_set_client | utf8 | 

| character_set_connection | utf8 | 

| character_set_database | latin1 | 

| character_set_filesystem | binary | 

| character_set_results | utf8 | 

| character_set_server | latin1 | 

| character_set_system | utf8 | 

| collation_connection | utf8_general_ci | 

| collation_database | latin1_swedish_ci | 

| collation_server | latin1_swedish_ci | 

+————————–+——————-+ 

10 rows in set (0.02 sec) 

可以看到我的mysql版本是5.7的,utf8mb4有一個使用限制,mysql版本必須是5.5以上,大家需要注意,我目前用的ubuntu系統是16.04的。當前mysql的字符集配置如上表,我們的目的是更改成utf8mb4。 

3.找到mysql的配置文件,可用命令 

sudo find / -name my.cnf 

我的配置文件位置如下,個別的位置有所不同 

/etc/mysql/mysql.conf.d/mysqld.cnf

4.修改配置文件 

在原文中添加以下內容: 

[client] 

default-character-set = utf8mb4 

[mysql] 

default-character-set = utf8mb4 

[mysqld] 

character-set-client-handshake = FALSE 

character-set-server = utf8mb4 

collation-server = utf8mb4_unicode_ci 

init_connect=』SET NAMES utf8mb4』 

原文件中無「[client]」和「[mysql]」,需要手動添加上。 

……

Here is entries for some specific programs

The following values assume you have at least 32M ram

[client] 

default-character-set = utf8mb4 

[mysql] 

default-character-set = utf8mb4 

[mysqld_safe] 

socket = /var/run/mysqld/mysqld.sock 

nice = 0 

[mysqld] 

#

* Basic Settings

user = mysql 

pid-file = /var/run/mysqld/mysqld.pid 

socket = /var/run/mysqld/mysqld.sock 

port = 3306 

basedir = /usr 

datadir = /var/lib/mysql 

tmpdir = /tmp 

lc-messages-dir = /usr/share/mysql 

skip-external-locking 

character-set-client-handshake = FALSE 

character-set-server = utf8mb4 

collation-server = utf8mb4_unicode_ci 

init_connect=』SET NAMES utf8mb4』 

#

Instead of skip-networking the default is now to listen only on

……

5.重啟mysql服務 

sudo service mysql restart

6.查看結果 

mysql SHOW VARIABLES WHERE Variable_name LIKE 『character_set_%』 OR Variable_name LIKE 『collation%』; 

ERROR 2006 (HY000): MySQL server has gone away 

No connection. Trying to reconnect… 

Connection id: 3 

Current database: * NONE * 

+————————–+——————–+ 

| Variable_name | Value | 

+————————–+——————–+ 

| character_set_client | utf8mb4 | 

| character_set_connection | utf8mb4 | 

| character_set_database | utf8mb4 | 

| character_set_filesystem | binary | 

| character_set_results | utf8mb4 | 

| character_set_server | utf8mb4 | 

| character_set_system | utf8 | 

| collation_connection | utf8mb4_unicode_ci | 

| collation_database | utf8mb4_unicode_ci | 

| collation_server | utf8mb4_unicode_ci | 

+————————–+——————–+ 

10 rows in set (0.00 sec)

centos 7安裝mysql

查看是否安裝MySQL數據庫

如有(xxx 為文件全名):

卸載依賴包

RPM方式安裝MySQL數據庫:

如報錯:

安裝 Mysql 包

安裝 Mysql 靜等安裝

如果執行命令過程中提示:Unable to find a match: mysql-community-server 可以通過命令解決

如果提示失敗的軟件包是:mysql-community-server-5.7.38-1.el7.x86_64 GPG 密鑰配置為:

在yum install 版本後面加上 –nogpgcheck,即可繞過GPG驗證成功安裝。比如

啟動

查看 Mysql 運行狀態

看到這個綠色就表示啟動成功了

連接數據庫

報錯

解決辦法:

修改my.in/my.cnf配置

在[mysqld]下添加

重啟

查看 Mysql 運行狀態

連接數據庫

直接回車

進入數據庫自己修改一個密碼

密碼不滿足當前策略要求解決方法(不推薦)

可以看到當前密碼長度要求為8,安全等級為MEDIUM,我們把長度改為4,等級改為LOW

8.0版本輸入命令:

5.7版本輸入命令:

修改密碼

【解決辦法】 MySQL版本5.7.6版本以前用戶可以使用如下命令:

MySQL版本5.7.6版本開始的用戶可以使用如下命令:

MySQL 允許IP遠程連接(不推薦)

centos7怎麼安裝mysql

安裝MariaDB

CentOS 7.0中,已經使用MariaDB替代了MySQL數據庫

1、安裝MariaDB

yum install mariadb mariadb-server #詢問是否要安裝,輸入Y即可自動安裝,直到安裝完成

systemctl start mariadb.service #啟動MariaDB

systemctl stop mariadb.service #停止MariaDB

systemctl restart mariadb.service #重啟MariaDB

systemctl enable mariadb.service #設置開機啟動

cp /usr/share/mysql/my-huge.cnf /etc/my.cnf #拷貝配置文件(注意:如果/etc目錄下面默認有一個my.cnf,直接覆蓋即可)

2、為root賬戶設置密碼

mysql_secure_installation

回車,根據提示輸入Y

輸入2次密碼,回車

根據提示一路輸入Y

最後出現:Thanks for using MySQL!

MySql密碼設置完成,重新啟動 MySQL:

systemctl restart mariadb.service #重啟MariaDB

原創文章,作者:QGNAK,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/130442.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
QGNAK的頭像QGNAK
上一篇 2024-10-03 23:28
下一篇 2024-10-03 23:28

相關推薦

  • 如何修改mysql的端口號

    本文將介紹如何修改mysql的端口號,方便開發者根據實際需求配置對應端口號。 一、為什麼需要修改mysql端口號 默認情況下,mysql使用的端口號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • Python 常用數據庫有哪些?

    在Python編程中,數據庫是不可或缺的一部分。隨着互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的數據庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • openeuler安裝數據庫方案

    本文將介紹在openeuler操作系統中安裝數據庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟件源 sudo…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL數據庫 在使用Python操作MySQL之前,我們需要先連接MySQL數據庫。在Python中,我…

    編程 2025-04-29
  • 數據庫第三範式會有刪除插入異常

    如果沒有正確設計數據庫,第三範式可能導致刪除和插入異常。以下是詳細解釋: 一、什麼是第三範式和範式理論? 範式理論是關係數據庫中的一個規範化過程。第三範式是範式理論中的一種常見形式…

    編程 2025-04-29
  • MySQL遞歸函數的用法

    本文將從多個方面對MySQL遞歸函數的用法做詳細的闡述,包括函數的定義、使用方法、示例及注意事項。 一、遞歸函數的定義 遞歸函數是指在函數內部調用自身的函數。MySQL提供了CRE…

    編程 2025-04-29
  • leveldb和unqlite:兩個高性能的數據庫存儲引擎

    本文將介紹兩款高性能的數據庫存儲引擎:leveldb和unqlite,並從多個方面對它們進行詳細的闡述。 一、leveldb:輕量級的鍵值存儲引擎 1、leveldb概述: lev…

    編程 2025-04-28
  • Python怎麼導入數據庫

    Python是一種高級編程語言。它具有簡單、易讀的語法和廣泛的庫,讓它成為一個靈活和強大的工具。Python的數據庫連接類型可以多種多樣,其中包括MySQL、Oracle、Post…

    編程 2025-04-28
  • MySQL bigint與long的區別

    本文將從數據類型定義、存儲空間、數據範圍、計算效率、應用場景五個方面詳細闡述MySQL bigint與long的區別。 一、數據類型定義 bigint在MySQL中是一種有符號的整…

    編程 2025-04-28
  • MySQL左連接索引不生效問題解決

    在MySQL數據庫中,經常會使用左連接查詢操作,但是左連接查詢中索引不生效的情況也比較常見。本文將從多個方面探討MySQL左連接索引不生效問題,並給出相應的解決方法。 一、索引的作…

    編程 2025-04-28

發表回復

登錄後才能評論