1. 程式人生 > >linux mysql5.7.17安裝教程 (多個文件參考安裝,安裝和用命令按自己的MySQL目錄)

linux mysql5.7.17安裝教程 (多個文件參考安裝,安裝和用命令按自己的MySQL目錄)

一  。(這個為主,其他檔案輔助解決問題)MySQL是Oracle旗下的一個關係型資料庫,也是目前行業內用的較多的資料庫之一,使用起來非常方便。在Linux下安裝MySQL與Windows略有不同,在Linux下會涉及到使用者建立、許可權、開機自啟等問題。下面看看我們如何在Linux下安裝MySQL5.7.17。

linux mysql5.7.17安裝教程

工具/原料

  • Linux(ubuntu 16.04 LTS)
  • MySQL 5.7.17

方法/步驟

  1. 下載安裝包

    從MySQL官網的下載頁面,選擇版本以及平臺,就會列出符合該要求的MySQL下載連結,然後我們在根據實際情況進行選擇。這裡的平臺我選擇Linux Generic

    (Linux通用,也就是這個包適用於大多數的Linux系統)。 由於我的是64位系統,我選擇了mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

    你也可以開啟終端用下面命令直接下載:

    wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

    這個包有623.7M,下載需要較長的時間。

    linux mysql5.7.17安裝教程
  2. 建立MySQL系統使用者

    使用以下命令,建立MySQL的系統使用者:

    sudo groupadd mysql

    sudo useradd -r -g mysql -s /bin/false mysql

    linux mysql5.7.17安裝教程
  3. 安裝MySQL

    將之前下載的mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz安裝包解壓到/usr/local目錄,並將目錄名稱改為mysql。然後建立mysql-files目錄,並設定許可權。

    解壓:

    sudo tar -zxf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz -C /usr/local/

    重新命名:

    sudo mv /usr/local/mysql-5.7.17-linux-glibc2.5-x86_64/ /usr/local/mysql/

    進入MySQL安裝目錄:

    cd /usr/local/mysql/

    建立mysql-files目錄:

    sudo mkdir mysql-files

    賦予750許可權:

    sudo chmod 750 mysql-files

    將當前目錄的擁有者設定為mysql使用者和mysql組:

    sudo chown -R mysql .

    sudo chgrp -R mysql .

    linux mysql5.7.17安裝教程
  4. 初始化MySQL

    到MySQL的安裝目錄,執行命令,初始化MySQL。

    執行初始化命令:

    sudo bin/mysqld --initialize --user=mysql

    配置ssl加密相關:

    sudo bin/mysql_ssl_rsa_setup

    到此MySQL安裝初始化完成,在執行以下命令修改許可權

    sudo chown -R root .

    sudo chown -R mysql data mysql-files

    注意事項:

    mysql初始化工作依賴libaio包,如果沒有安裝就會出現這個錯誤 “bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory”。

    檢查是否已安裝:

    yum search libaio 或 apt-cache search libaio

    如果沒有,則安裝:

    yum install libaio 或 apt-get install libaio1

    yum適用於centos/readhat等系統,apt-get適用於ubuntu、debian系統,請按自己需要選擇。

    linux mysql5.7.17安裝教程
  5. 啟動MySQL

    將mysql.server檔案複製到/etc/init.d目錄下

    sudo cp support-files/mysql.server /etc/init.d/mysql.server

    啟動mysql服務:

    sudo systemctl start mysql.server

    停止mysql服務:

    sudo systemctl stop mysql.server

    linux mysql5.7.17安裝教程
  6. 使用MySQL

    MySQL伺服器啟動後,使用以下命令登入MySQL:

    bin/mysql -u root -p

    需要注意的就是這個地方的密碼,是你執行"sudo bin/mysqld --initialize --user=mysql"命令時產生的一個隨機密碼。具體位置請看下圖中畫紅線的部分。

    linux mysql5.7.17安裝教程
  7. 修改密碼

    初始化MySQL時生成的隨機密碼,只能用於初次登入。如果你要使用SQL語句作其他操作,就要修改密碼後才能進行了。否則會報錯“ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.”。

    我們通過SET指令修改密碼。

    SET PASSWORD=PASSWORD('newpassword');

    請留意下圖,紅線部分。

    到此MySQL就安裝完畢了,可以愉快的使用MySQL提供的服務了。

    linux mysql5.7.17安裝教程

二。 

[email protected] ~]# mysql -u root
-bash: mysql: command not found


原因:這是由於系統預設會查詢/usr/bin下的命令,如果這個命令不在這個目錄下,當然會找不到命令,我們需要做的就是對映一個連結到/usr/bin目錄下,相當於建立一個連結檔案。
首先得知道mysql命令或mysqladmin命令的完整路徑,比如mysql的路徑是:/usr/local/mysql/bin/mysql,我們則可以這樣執行命令:

# ln -s /usr/local/mysql/bin/mysql /usr/bin

以下是補充:

linux下,在mysql正常執行的情況下,輸入mysql提示:
mysql command not found

遇上-bash: mysql: command not found的情況彆著急,這個是因為/usr/local/bin目錄下缺失mysql導致,只需要一下方法建立軟連結,即可以解決:
把mysql安裝目錄,比如MYSQLPATH/bin/mysql,對映到/usr/local/bin目錄下:
# cd /usr/local/bin
# ln -fs /MYSQLPATH/bin/mysql mysql

還有其它常用命令mysqladmin、mysqldump等不可用時候都可按用此方法解決。
注:其中MYSQLPATH是mysql的實際安裝路徑

三。  

12. 新增MySQL服務

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

13. 啟動MySQL

service mysql start

四 。 

ERROR 2002 (HY000): Can't connect to local MySQL server through socket


#修改my.cnf,如下
[[email protected] mysqldata]# vi /etc/my.cnf
[mysql]
no-auto-rehash
socket = /tmp/mysql.sock  #新增該行

#重啟mysql伺服器
[[email protected] mysqldata]# service mysqld start

五 。 

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

  1. 開啟/etc/my.cnf,看看裡面配置的socket位置是什麼目錄,

    例如:socket=/tmp/mysql.sock

  2. 看看/tmp/mysql.sock是否存在,不存在建立一個,若和/etc/my.cnf不一致,建立一個軟連線

    例如 ln -s /home/mysql/data/my.sock /tmp/mysql.sock

六 。 

標籤: mysql忘記密碼 387人閱讀 評論(0) 收藏 舉報

1.vi /etc/my.cnf

2.在[mysqld]中新增

skip-grant-tables

例如:

[mysqld]
skip-grant-tables
datadir=/var/lib/MySQL
socket=/var/lib/mysql/mysql.sock

3.重啟mysql

service mysql restart

4.使用者無密碼登入

mysql -uroot -p (直接點選回車,密碼為空)

5.選擇資料庫

use mysql;

6.修改root密碼

update user set authentication_string=password('123456') where user='root';

7.執行

 flush privileges;

8.退出

exit;

9.刪除

skip-grant-tables

10.重啟mysql

service mysql restart

參考:http://www.jb51.NET/article/100211.htm



相關推薦

linux mysql5.7.17安裝教程 (參考安裝安裝命令自己MySQL目錄)

一  。(這個為主,其他檔案輔助解決問題)MySQL是Oracle旗下的一個關係型資料庫,也是目前行業內用的較多的資料庫之一,使用起來非常方便。在Linux下安裝MySQL與Windows略有不同,在Linux下會涉及到使用者建立、許可權、開機自啟等問題。下面看看我

上傳一般處理程序

hit lalala -s mar percent num isp 磁盤 button <!DOCTYPE html><html><head> <meta charset="utf-8" /> <title&

Linux系統目錄結構類型lsalias命令

目錄 文件結構 ls alias Linux系統的目錄結構 根目錄/ 頂點,其它所有的目錄都在根下。根下面的目錄及子目錄是一個有層次的樹狀結構,很像一顆倒掛著的樹。Linux的目錄結構和磁盤分區是分離的。 根目錄 /bin 存放二進制的命令,一般是普通用戶所使用的命令 /boot 存放系統引導

Linux學習7-一個tomcat部署專案(埠)

前言 前面已經在tomcat上搭建了jenkins的環境,如果我們有多個專案需要部署的話,如何在一個tomcat下部署多個專案呢? 前面是直接在:8080/jenkins訪問的,如果有其它專案部署的話,可以新開一個埠,讓新的專案訪問另外一個埠就行了 修改server.xml tomcat的配置檔案在/u

Linux Centos 刪除除某()之外的所有

但是 交互式 inux 空串 初始化 lsp echo 搜索 當前目錄 通常我們通過rm -rf *可以直接強制刪除當前文件夾裏面的所有內容,但是有些時候我們需要保留一些文件,就比如,網站轉移更新需要保留程序壓縮包等就需要用到在linux centos環境下需要刪除除某(

將PDF拆分成教程

進度 1.5 方便 按鈕 播放 網址 tex 添加 保存 畢業的大學生都要寫論文,這是很重要的一個環節,但是論文不像我們平時編輯資料一樣,只要差不多就可以交,但是論文不一樣。我們到網上采集資料的時候,都是都是PDF格式的文件偏多,所以我們的就很苦惱,下載之後也不能使用。當時

c++中如何共用一個全局變量

calc 其它 pop 例子 頭文件 標準 關鍵字 word sin 例子: 頭文件:state.h 源文件:state.cpp 其它源文件:t1.cpp t2.cpp t3.cpp, 這些源文件都包含頭文件state.h。 需要定義一個全局變量

在vi中打開復制一個行到另一個

class pan 上一個 復制 family clas font style -s :set number 查看行號1、vi a.txt b.txt或者vi *.txt 2、文件間切換 :n切換到下一個文件,:wn保存再切換 :N到上一個文件,:wN保存再切換 :.=看當

shell之使用paste命令列拼接

rdquo 指定 esql res postgre rac 內容 參數 cat 試驗文件: [[email protected]/* */ shell-script]# cat text1.txt 1 2 3 4 5 [[email p

struts2學習(14)struts2上傳下載(4)上傳下載

sym ring spl out urn ide http iso length 四、多個文件上傳: 五、struts2文件下載: 多個文件上傳action com.cy.action.FilesUploadAction.java: package com.cy.a

使用gcc命令編譯

生成 src cloud 多個 .bat pan del 準備 後綴名 使用g++命令直接一次性編譯多個文件 這裏以簡單的HelloWorld程序為例,假設我們一共有三個文件:main.cpp,HelloWorld.cpp和HelloWorld.h. 其中HelloWo

shell遍歷夾並進行批量修改

多個 hang img style 問題 abc 修改文件 jpg 圖片 問題:將圖片名中的ing_變為0。 當前目錄下:$ ls pic,change_name.sh pic/ |__kk1/ |__img_001.jpg

php上傳

ctype Enctype 上傳 put 文件上傳 php form part input 表單如下 <form class="form-horizontal" action="{:U(‘System/addAdvert‘)}" method="POST" enct

springMvc接受單個

files ont orm art form style 是否 cnblogs pre web端 <form id="iconForm" enctype="multipart/form-data"></form> JS:通過ajaxSubmit提

input:file 選擇 FileReader讀取為二進制

tails csdn type event對象 進制 調用 upload chan change 1.http://blog.csdn.net/jackfrued/article/details/8967667 關於FileReader的詳細API 2.關於<inpu

一個mapreduce同時加載讀取的代碼部分

resource blog efi [1] buffer sort family protect rri 方法一:   a.第一步:在job中加載兩個文件所在的位置 FileInputFormat.setInputPaths(job, new Pa

OFFICE 打開的之間側換問題

gedit explore exce 以管理員身份運行 打開 win alt+ 管理員 問題 打開的多個excel文件,快捷鍵Alt+tab 切換時需要按兩次鍵, 修改為一次方法如下: 創建一個.reg文件, 內容如下: REGEDIT4 [HKEY_CURRENT_US

java修改的名字

ack import 分享 new name lis 使用 es2017 com 其實就是三步 第一個先把需要的文件類型,什麽文件找到 file2.getName().endsWith(".txt") 可以通過.txt的後綴名去判斷要什麽文件 第二步 File f

一次下載

itl cnblogs script log logs html 文件 download nload 一次下載多個文件 JavaScript多文件下載一次下載多個文件

上傳

sda str type reat doc nts else if pre targe 上傳多個文件<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8">