Ubuntu安裝MySQL的三種方式以及卸載MySQL
注意:我所有操作一開始就執(zhí)行了:sudo su (進(jìn)入特權(quán)模式,后續(xù)命令就不需要在用sudo提權(quán)了)
一.卸載MySQL
看個(gè)人習(xí)慣,我基本用的是第一種,簡單粗暴
刪除mysql的數(shù)據(jù)文件 sudo rm /var/lib/MySQL/ -R 刪除mysql的配置文件 sudo rm /etc/mysql/ -R 自動(dòng)卸載mysql(包括server和client) sudo apt-get autoremove mysql* --purge sudo apt-get remove apparmor 檢查是否卸載干凈 dpkg -l | grep mysql# 若沒有返回,說明已完成卸載
dpkg --list|grep mysql #首先在終端中查看MySQL的依賴項(xiàng) sudo apt-get remove mysql-common #卸載 sudo apt-get autoremove --purge mysql-server-8.0 #卸載,看你自己安裝的什么版本在卸載 dpkg -l|grep ^rc|awk '{print$2}'|sudo xargs dpkg -P #清除殘留數(shù)據(jù) dpkg --list|grep mysql #再次查看MySQL的剩余依賴項(xiàng),基本到這就干凈了 sudo apt-get autoremove --purge mysql-apt-config #如果有的話繼續(xù)刪除剩余依賴項(xiàng)
dpkg -l 命令會(huì)列出系統(tǒng)中所有已安裝的軟件包信息。結(jié)合grep,可以過濾出自己想要的內(nèi)容。
輸出第一列
一般為兩個(gè)字母,分別代表(期望狀態(tài)和當(dāng)前狀態(tài))最常見的就是上圖中的ii
期望狀態(tài)標(biāo)識(shí):
- 未知
(u)
- 安裝
(i)
- 刪除
(r)
- 清除
(p)
- 保持
(h)
當(dāng)前狀態(tài)標(biāo)識(shí):
- 未安裝(n)
- 已安裝(i)
- 僅存配置(c)
- 僅解壓縮(U)
- 配置失敗(F)
- 不完全安裝(H)
- 觸發(fā)器等待(W)
- 觸發(fā)器未決(T)
錯(cuò)誤標(biāo)識(shí):
- 無
- 需重裝(R)
一般我們系統(tǒng)中最常見的就是ii(期望安裝,并且已正常安裝)。
還有一種比較常見的是rc(期望卸載,目前僅僅保留了一些配置信息)。
系統(tǒng)中所有的安裝的包的內(nèi)容都被記錄在:/var/lib/dpkg/status
,dpkg -l 命令就是讀取的這個(gè)文件中的內(nèi)容進(jìn)行顯示。
二.直接安裝
sudo apt update && sudo apt upgrade sudo su #進(jìn)入特權(quán)模式,使用的是root權(quán)限,這樣后續(xù)執(zhí)行命令就不需要sudo apt install -y mysql-server #安裝的是最新版本,比如MySQL8.0的 mysql -V #查看版本 mysql -uroot #這種安裝方式前期沒有設(shè)置密碼,直接登錄
1.密碼查詢及更改2
若安裝過程未設(shè)置密碼或者設(shè)置了密碼然后使用過程中忘記密碼了,可以通過以下方式查詢、修改密碼
cat /etc/mysql/debian.cnf
在沒有改密碼之前用mysql -uroot 和這個(gè)獲取用戶密碼登錄都可以
2.修改密碼
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密碼';
三.安裝指定版本
選擇tar壓縮包,選擇bundle版本(帶部分依賴,比較全)
警告:注意安裝順序
1.安裝mysql-community-client相關(guān)
dpkg -i mysql-common_8.0.20-2ubuntu20.04_amd64.deb dpkg -i mysql-community-client-core_8.0.20-2ubuntu20.04_amd64.deb dpkg -i mysql-community-client_8.0.20-2ubuntu20.04_amd64.deb
2.安裝mysql-community-server-core
dpkg -i mysql-community-server-core_8.0.20-2ubuntu20.04_amd64.deb #這里應(yīng)該會(huì)報(bào)錯(cuò),缺少依賴,缺啥補(bǔ)啥 apt install -y libmecab2 #安裝依賴,這里是我缺的依賴 dpkg -i mysql-community-server-core_8.0.20-2ubuntu20.04_amd64.deb
dpkg -i mysql-client_8.0.20-2ubuntu20.04_amd64.deb dpkg -i mysql-community-server_8.0.20-2ubuntu20.04_amd64.deb
安裝這二個(gè)的時(shí)候就會(huì)彈出設(shè)置密碼,自己定義就好
mysql -V mysql -uroot -p123
到這里基本就沒有問題了
四.編譯安裝
這里有兩個(gè)版本的代碼,一個(gè)帶有boost的,一個(gè)沒有,我們選擇下面那個(gè)帶boost的,可以省很多事,不然還要自己下載boost安裝
1.裝包解壓
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.18.tar.gz tar -zxvf mysql-5.7.18.tar.gz
2.安裝依賴包
apt install -y cmake bison libncurses5-dev build-essential
3.編譯安裝
cd mysql-5.7.18/ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_BOOST=boost make && make install
4.添加用戶組,和文件管理
groupadd mysql useradd -g mysql mysql mkdir /usr/local/mysql/data chown -R mysql /usr/local/mysql chgrp -R mysql /usr/local/mysql
五、初始化mysql
指定數(shù)據(jù)目錄data位置 datadir
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
這個(gè)會(huì)生成一個(gè)很隨機(jī)的密碼,要備份一下:我的是:(udyv%Tmv0#e
六、編輯簡單配置文件
vim /etc/my.cnf //添加下面的內(nèi)容 [client] socket = /tmp/mysql.sock [mysqld] port=3306 socket = /tmp/mysql.sock basedir = /usr/local/mysql datadir = /usr/local/mysql/data
如果怕3306端口已經(jīng)被占用,也可以寫3307啥的
七.啟動(dòng)MySQL
一般啟動(dòng)或暫停模式:support-files/mysql.server start (stop)
下面把啟動(dòng)放到service下,可以快捷啟動(dòng)
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chmod +x /etc/init.d/mysqld update-rc.d mysqld defaults service mysqld start service mysqld status #確定已經(jīng)啟動(dòng)
八.登錄MySQL
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql mysql -uroot -p'(udyv%Tmv0#e' //重新修改密碼 為123456 mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; exit 退出
修改一下my.cnf ,添加用戶和密碼
vim /etc/my.cnf
重新用新密碼登陸
九、設(shè)置遠(yuǎn)程連接
#所有主機(jī)都可以連接
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; mysql>flush privileges; exit
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Ubuntu?22.04?服務(wù)器安裝部署(nginx+postgresql)
- 安裝Ubuntu和ssh遠(yuǎn)程連接的設(shè)置方式
- Ubuntu安裝配置MySQL、Python、Nginx的詳細(xì)過程
- Ubuntu上安裝Docker及可視化管理工具的流程步驟
- ubuntu安裝dotnet的方法
- Ubuntu系統(tǒng)中Redis的安裝步驟及服務(wù)配置詳解
- Ubuntu安裝MariaDB的具體步驟記錄
- 如何在ubuntu18.04安裝node?14.16.0
- Ubuntu24.04LTS在線安裝Docker引擎的詳細(xì)過程
- VMware虛擬機(jī)安裝Ubuntu20.04詳細(xì)教程(最新推薦)
- 在linux中安裝nginx及在樹莓派ubuntu中安裝nginx的方法
- ubuntu安裝golang并設(shè)置goproxy的方法步驟
- ubuntu20.04安裝unity-tweak-tools啟動(dòng)時(shí)遇到錯(cuò)誤的解決
- 在Ubuntu?Server?22.04上安裝?Docker的詳細(xì)步驟記錄
- Ubuntu?22.04或20.04安裝Oracle?SQL?Developer的圖文教程
- Ubuntu?Server?22.04.5?入門篇:詳盡安裝部署指南
相關(guān)文章
MySQL 聯(lián)合索引與Where子句的優(yōu)化 提高數(shù)據(jù)庫運(yùn)行效率
網(wǎng)站系統(tǒng)上線至今,數(shù)據(jù)量已經(jīng)不知不覺上到500M,近8W記錄了。涉及數(shù)據(jù)庫操作的基本都是變得很慢了,這篇文章主要是說明配置并不是數(shù)據(jù)庫操作慢的主要原因2012-01-01為什么MySQL數(shù)據(jù)庫索引選擇使用B+樹?
今天小編就為大家分享一篇關(guān)于為什么MySQL數(shù)據(jù)庫索引選擇使用B+樹?,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03MySQL 8.0 Online DDL快速加列的相關(guān)總結(jié)
在實(shí)際的MySQL運(yùn)維過程中,我們經(jīng)常會(huì)遇到業(yè)務(wù)需要給某張表添加字段的情況,本文將介紹幾種加字段的方法,感興趣的朋友可以參考下2021-06-06mysql5.7 生成列 generated column用法實(shí)例分析
這篇文章主要介紹了mysql5.7 生成列 generated column用法,結(jié)合實(shí)例形式分析了mysql5.7 生成列 generated column基本原理、用法及操作注意事項(xiàng),需要的朋友可以參考下2020-02-02mysql觸發(fā)器實(shí)時(shí)檢測一條語句進(jìn)行備份刪除思路詳解
遇到過這樣一個(gè)需求,在一張表里會(huì)不時(shí)出現(xiàn) “違規(guī)” 字樣的字段,需要在出現(xiàn)這個(gè)字段的時(shí)候,把整行的數(shù)據(jù)刪掉,針對(duì)這個(gè)需求我們?cè)撊绾尾僮髂兀旅娓S小編看下mysql觸發(fā)器實(shí)時(shí)檢測一條語句進(jìn)行備份刪除的解決思路,一起看看吧2021-09-09