Linux MySql 安裝與配置

来源:https://www.cnblogs.com/su-root/archive/2019/01/10/10247514.html
-Advertisement-
Play Games

為什麼選擇MySQL資料庫? 毫無疑問,絕大多數的使用linux操作系統的大中小型互聯網網站都在使用MySQL作為其後端的資料庫存儲,從大型的BAT門戶,到電商平臺,分類門戶等無一例都使用MySQL資料庫。 My Sql 資料庫優點: 1、性能卓越,服務穩定,很少出現異常宕機 2、開放源代碼且無版權 ...


為什麼選擇MySQL資料庫?

  毫無疑問,絕大多數的使用linux操作系統的大中小型互聯網網站都在使用MySQL作為其後端的資料庫存儲,從大型的BAT門戶,到電商平臺,分類門戶等無一例都使用MySQL資料庫。

My Sql 資料庫優點:

1、性能卓越,服務穩定,很少出現異常宕機

2、開放源代碼且無版權約束,自主性及使用成本低

3、歷史悠久,社區及用戶非常活躍,遇到問題,可以尋求幫助

4、軟體體積小,安排使用簡單,並且易於維護,安裝及維護成本低

5、品牌口碑效應,使得企業無需考慮直接用之,LAMP,LEMP流行架構

6、支持多操作系統,提供多種API介面,支持多種開發語言,特別對流行的PHP語言有很好支持

linux軟體的安裝方式:

1、  yum/rpm:簡單 快,無法定製。

2、  編譯安裝:比較複雜,速度慢,可定製。

./configure;make;make install   gmake;gmake insall  

3、  二進位包*****

直接解壓就能用(類似於綠色軟體,無需安裝) 簡單,快,不好定製。

下麵我們選擇二進位包方法:

1、創建mysql用戶

[root@lamp01 tools]# id mysql
id: mysql:無此用戶
[root@lamp01 tools]# groupadd mysql
[root@lamp01 tools]# useradd -s /sbin/nologin -g mysql -M mysql
[root@lamp01 tools]# id mysql
uid=503(mysql) gid=503(mysql) 組=503(mysql)
[root@lamp01 tools]#

2、下載或上傳mysql二進位軟體包並解壓

[root@lamp01 tools]# tar xf ./mysql-5.5.32-linux2.6-x86_64.tar.gz
[root@lamp01 tools]# ll
總用量 182352
drwxr-xr-x. 13 root root      4096 1月  10 21:54 mysql-5.5.32-linux2.6-x86_64
-rw-r--r--.  1 root root 186722932 1月  10 21:51 mysql-5.5.32-linux2.6-x86_64.tar.gz
3、將解壓的文件移動到安裝目錄下,並做軟連接(隱藏版本號安全)

[root@lamp01 tools]# mv mysql-5.5.32-linux2.6-x86_64 /application/mysql-5.5.32
[root@lamp01 tools]# ln -s /application/mysql-5.5.32/ /application/mysql
[root@lamp01 tools]# ll /application/總用量 8l
rwxrwxrwx. 1 root root 26 1月 10 21:57 mysql -> /application/mysql-5.5.32/
drwxr-xr-x. 13 root root 4096 1月 10 21:54 mysql-5.5.32
lrwxrwxrwx. 1 root root 25 12月 19 03:30 nginx -> /application/nginx-1.6.3/
drwxr-xr-x. 11 root root 4096 12月 20 21:12 nginx-1.6.3
[root@lamp01 tools]#

操作到此步驟相當於編譯安裝make install 之後。

4、初始化資料庫

[root@lamp01 tools]# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql
Installing MySQL system tables...
OK
Filling help tables...
OK
解釋:

/application/mysql/scripts/mysql_install_db   //指定安裝的命令

--basedir   //指定mysql安裝的目錄

--datadir   //存放數據文件的目錄

--user     //mysql用戶

5、授權mysql管理資料庫文件 

[root@lamp01 tools]# chown -R mysql.mysql /application/mysql/
[root@lamp01 tools]# cd /application/mysql/
[root@lamp01 mysql]# ll support-files/*.cnf
-rw-r--r--. 1 mysql mysql  4691 6月  19 2013 support-files/my-huge.cnf
-rw-r--r--. 1 mysql mysql 19759 6月  19 2013 support-files/my-innodb-heavy-4G.cnf
-rw-r--r--. 1 mysql mysql  4665 6月  19 2013 support-files/my-large.cnf
-rw-r--r--. 1 mysql mysql  4676 6月  19 2013 support-files/my-medium.cnf
-rw-r--r--. 1 mysql mysql  2840 6月  19 2013 support-files/my-small.cnf
[root@lamp01 mysql]#
6、生成mysql配置文件

\cp /application/mysql/support-files/my-small.cnf  /etc/my.cnf
7、配置啟動mysql

[root@lamp01 mysql]# sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/bin/mysqld_safe
[root@lamp01 mysql]# /application/mysql/bin/mysqld_safe &
[1] 1581
[root@lamp01 mysql]# 190110 22:29:53 mysqld_safe Logging to '/application/mysql/data/lamp0
1.err'.190110 22:29:53 mysqld_safe Starting mysqld daemon with databases from /application/mysql/
data
[root@lamp01 mysql]# lsof -i :3306
COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mysqld  1799 mysql   10u  IPv4  21901      0t0  TCP *:mysql (LISTEN)
[root@lamp01 mysql]#

8、配置環境變數

vi /etc/profile

PATH="/application/mysql/bin:$PATH"

source /etc/profile

也可以把mysql命令放到已經有環境變數的路徑里

[root@lamp01 mysql]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@lamp01 mysql]# cp /application/mysql/bin/* /usr/local/sbin/
[root@lamp01 mysql]# which mysql
/usr/local/sbin/mysql
[root@lamp01 mysql]#
9、登陸測試

[root@lamp01 mysql]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.32 MySQL Community Server (GPL)

Copyright (c) 2000, 2013, 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已經安裝ok了。如果安裝時或者工作中有問題,可以看錯誤日誌分析問題原因:

cat /application/mysql/data/mysql-server.err

10、設置及更改mysql密碼

[root@lamp01 mysql]# mysqladmin -uroot password "123456"
[root@lamp01 mysql]# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
[root@lamp01 mysql]# mysql -uroot -p123456
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.5.32 MySQL Community Server (GPL)

Copyright (c) 2000, 2013, 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>

更改密碼:

[root@lamp01 mysql]# mysqladmin -uroot -p123456 password "bqh123"
[root@lamp01 mysql]# mysql -uroot -p123456
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
[root@lamp01 mysql]# mysql -uroot -pbqh123
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.5.32 MySQL Community Server (GPL)

Copyright (c) 2000, 2013, 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>

為了安全起見,我們在登陸時,採用互動式登陸

[root@lamp01 mysql]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 5.5.32 MySQL Community Server (GPL)

Copyright (c) 2000, 2013, 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>

11、安全優化:刪除不必要的庫和用戶

刪除test庫:dro database test;

刪除無用用戶(保留root和localhost)

drop user '用戶'@‘主機’;

註意:主機大寫或者特殊字元刪不了,需用

delete from mysql.user where user='用戶' and host='主機大寫或特殊字元';

如果不小心把這兩個也給刪除了,恢復方法:

grant all on *.* to ‘root’@localhostt identified by ‘密碼’ with grant option;

flush privileges;    #刷新許可權

mysql簡單的命令:

查看所有庫:show databases;   

切庫:use mysql;

查看用戶列表:select user,host from mysql.user 

查看當前用戶:select user();

查看當前所在庫:select database();

刪除資料庫:drop database 庫名;

刪除用戶:drop user '用戶'@'主機';


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • https://stackoverflow.com/questions/45875981/error while reading json file in dotnet core the configured user limit 128 on You are creating file watch ...
  • 在 .Net Core 2.2中 Microsoft.AspNetCore.App 預設內置了EntityFramework Core 包,所以在使用過程中,我們無需再從 NuGet 倉庫單獨應用 EFCore 包;本文並不打算深入的介紹 EFCore 的各種使用方式、原理解析,本文重點在於解決讓初... ...
  • 解決方法 定位到csproject 文件夾 問題解決 接下來正常進行CodeFirst操作:生成Migration [name] Upate Database 來源: pass:我會經常修改 不希望被轉載! ...
  • 先看下ASP.NET Core的啟動代碼,如下圖:通過以上代碼,我們可以初步得出以下結論:所有的ASP.NET Core程式本質上也是一個控制台程式,使用Program的Main方法作為程式的入口。控制台Main入口-->IWebHostBuilder-->IWebHost-->Run,發現本質上就... ...
  • asp.net core2.2 "用戶驗證" 和 "授權" 有很詳細和特貼心的介紹,我感興趣的主要是這兩篇: 1. "cookie身份驗證" 2. "基於角色的授權" 我的項目有兩類用戶: 1. 微信公眾號用戶,用戶名為公眾號的openid 2. 企業微信的用戶,用戶名為企業微信的userid 每類 ...
  • 在前段時間做了一下列印,因為需要支持的格式比較多,所以wpf能列印的有限分享一下幾種格式的列印(.xls .xlsx .doc .docx .png .jpg .bmp .pdf) 首先為了保證excel和word的格式問題,excel和word是調用的office進行列印的。 獲取所有印表機的方法 ...
  • 註:本文是英文寫的,偷懶自動翻譯過來了,原文地址:Implementing MasterDetail layout in Xamarin.Forms by MvvmCross 歡迎大家關註我的公眾號:程式員在紐西蘭,瞭解美麗的紐西蘭和碼農們的生活 閱讀本文大概需要20分鐘。本文目錄: 前言 通過Mv ...
  • 1.topic類型的Exchange 我們之前說過Topic類型的Exchange是direct類型的模糊查詢模式,可以通過routkey來實現模糊消費message,topic的模糊匹配有兩種模式: 1. 使用*來匹配一個單詞 2.使用#來匹配0個或多個單詞 我們來看代碼 消費端 生產者代碼 我們 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...