Skip to content
WONGCW 網誌
  • 首頁
  • 論壇
  • 微博
  • 壁紙下載
  • 免費圖床
  • 視頻下載
  • 聊天室
  • SEO工具
  • 支援中心
  • 表格製作
  • More
    • 在線名片
    • 網頁搜索
    • 天氣預報
    • 二維碼生成器
    • WordPress 插件及主題下載
  • Search Icon

WONGCW 網誌

記錄生活經驗與點滴

CentOS 7安装MySQL 8.0

CentOS 7安装MySQL 8.0

2018-12-29 Comments 0 Comment
羊毛党之家 CentOS 7安装MySQL 8.0  https://yangmaodang.org

这MySQL的默认端口是3306。

Linux上面安装的方式主要分为如下三种:

YUM
二进制包
源码包
源码包的安装过于复杂,但是可以灵活配置,这里我们就不介绍了,主要介绍yum和二进制包的形式。

系统环境
$ cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
$ uname -a
Linux host.localdomain 3.10.0-957.1.3.el7.x86_64 #1 SMP Thu Nov 29 14:49:43 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
YUM
添加YUM源
$ rpm -ivh https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
mysql repo的下载地址:https://dev.mysql.com/downloads/repo/yum/

安装
$ yum install mysql-community-server -y
启动并设置开机自启动
$ systemctl enable –now mysqld
查看启动状态
$ systemctl status mysqld
● mysqld.service – MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since 一 2018-12-17 08:47:04 EST; 15min ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 11986 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 12055 (mysqld)
Status: “SERVER_OPERATING”
CGroup: /system.slice/mysqld.service
└─12055 /usr/sbin/mysqld

12月 17 08:46:55 host.localdomain systemd[1]: Starting MySQL Server…
12月 17 08:47:04 host.localdomain systemd[1]: Started MySQL Server.
登录
MySQL在第一次启动的时候,会随机生成一个密码放在/var/log/mysqld.log日志文件中,我们可以通过grep命令获取到root的密码

$ grep ‘temporary password’ /var/log/mysqld.log
2018-06-12T09:34:07.463168Z 1 [Note] A temporary password is generated for root@localhost: WiwB.e2c3udA
其中WiwB.e2c3udA就是root用户的密码,下面我们登录MySQL

$ mysql -u root -h 127.0.0.1 -p
Enter password: # 输入密码
mysql>
查看数据库

mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
这里会提示我们必须修改root密码才可以正常使用,我们把密码修改为D*gYmF5*

# 修改当前用户的密码
mysql> set password=password(‘D*gYmF5*’);
Query OK, 0 rows affected, 1 warning (0.00 sec)
# 刷新权限
mysql> flush privileges;
Query OK, 0 rows affected (0.06 sec)
然后退出重新登录MySQL

mysql> exit
Bye
$ mysql -u root -h 127.0.0.1 -p
Enter password: # 输入刚才设置的密码
# 查看有多少库
mysql> show databases;
+——————–+
| Database |
+——————–+
| information_schema |
| mysql |
| performance_schema |
| sys |
+——————–+
4 rows in set (0.01 sec)
# 查看有多少用户
mysql> select user,host from mysql.user;
+—————+———–+
| user | host |
+—————+———–+
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+—————+———–+
3 rows in set (0.00 sec)
二进制包
在安装之前,我们需要安装依赖库,因为MySQL需要

$ yum install libaio libaio-devel numactl numactl-devel -y
最好也把开发工具包安装上

$ yum groupinstall “Development Tools” -y
卸载mariadb
$ yum remove mariadb mariadb-libs -y
创建MySQL用户和组
$ groupadd mysql
$ useradd -r -g mysql -s /bin/false mysql
下载MySQL包
$ cd /opt/
$ wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.13-linux-glibc2.12-x86_64.tar
获取不同版本的下载地址:https://dev.mysql.com/downloads/mysql/

解压并创建软链
$ tar -xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar
$ tar xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz
$ ln -s /opt/mysql-8.0.13-linux-glibc2.12-x86_64 /usr/local/mysql
创建数据文件存放目录
$ mkdir /usr/local/mysql/data
授权
$ chown -R mysql.mysql /usr/local/mysql
$ ls -ld /usr/local/mysql
lrwxrwxrwx 1 mysql mysql 40 12月 17 09:31 /usr/local/mysql -> /opt/mysql-8.0.13-linux-glibc2.12-x86_64
添加环境变量
$ echo ‘export PATH=$PATH:/usr/local/mysql/bin’ >> ~/.bash_profile
$ source ~/.bash_profile
验证是否添加成功

$ mysql –version
mysql Ver 8.0.13 for linux-glibc2.12 on x86_64 (MySQL Community Server – GPL)
初始化数据库
$ mysqld –initialize –user=mysql –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data
2018-12-17T14:32:55.725037Z 0 [System] [MY-013169] [Server] /opt/mysql-8.0.13-linux-glibc2.12-x86_64/bin/mysqld (mysqld 8.0.13) initializing of server in progress as process 23954
2018-12-17T14:32:59.438919Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: fTVb-*WAq1Oo
2018-12-17T14:33:02.335171Z 0 [System] [MY-013170] [Server] /opt/mysql-8.0.13-linux-glibc2.12-x86_64/bin/mysqld (mysqld 8.0.13) initializing of server has completed
记住倒数第二条的信息,告诉你了root的密码是fTVb-*WAq1Oo

生成SSL
$ mysql_ssl_rsa_setup –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data/
创建my.cnf参数文件
$ vim /etc/my.cnf
[mysqld]
port = 3306
user = mysql
socket = /usr/local/mysql/data/mysqld.sock
pid-file = /usr/local/mysql/data/mysqld.pid
basedir = /usr/local/mysql/
datadir = /usr/local/mysql/data/
设置启动项
$ vim /usr/lib/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target

[Install]
WantedBy=multi-user.target

[Service]
User=mysql
Group=mysql

Type=forking

PIDFile=/usr/local/mysql/data/mysqld.pid

# Disable service start and stop timeout logic of systemd for mysqld service.
TimeoutSec=0

# Execute pre and post scripts as root
PermissionsStartOnly=true

# Start main service
ExecStart=/usr/local/mysql/bin/mysqld –daemonize –pid-file=/usr/local/mysql/data/mysqld.pid $MYSQLD_OPTS

# Use this to switch malloc implementation
EnvironmentFile=-/etc/sysconfig/mysql

# Sets open_files_limit
LimitNOFILE = 5000

Restart=on-failure

RestartPreventExitStatus=1

PrivateTmp=false
重新加载systemd脚本

$ systemctl daemon-reload
启动并添加开机自启动

$ systemctl enable –now –now mysqld
查看运行状态

$ systemctl status mysqld
● mysqld.service – MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since 一 2018-12-17 09:35:24 EST; 4s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 24042 ExecStart=/usr/local/mysql/bin/mysqld –daemonize –pid-file=/usr/local/mysql/data/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
Main PID: 24044 (mysqld)
CGroup: /system.slice/mysqld.service
└─24044 /usr/local/mysql/bin/mysqld –daemonize –pid-file=/usr/local/mysql/data/mysqld.pid

12月 17 09:35:22 host.localdomain systemd[1]: Starting MySQL Server…
12月 17 09:35:23 host.localdomain mysqld[24042]: 2018-12-17T14:35:22.445672Z 0 [Warning] [MY-010139] [Server] Changed limits: max_open_files: 5000 (requested 8161)
12月 17 09:35:23 host.localdomain mysqld[24042]: 2018-12-17T14:35:22.445893Z 0 [Warning] [MY-010142] [Server] Changed limits: table_open_cache: 2419 (requested 4000)
12月 17 09:35:23 host.localdomain mysqld[24042]: 2018-12-17T14:35:23.315272Z 0 [System] [MY-010116] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.13) starting as process 24042
12月 17 09:35:24 host.localdomain mysqld[24042]: 2018-12-17T14:35:24.377008Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
12月 17 09:35:24 host.localdomain mysqld[24042]: 2018-12-17T14:35:24.414863Z 0 [System] [MY-010931] [Server] /usr/local/mysql/bin/mysqld: ready for connections. Version: ‘8.0.13’ socket: ‘/usr… Server – GPL.
12月 17 09:35:24 host.localdomain systemd[1]: Started MySQL Server.
Hint: Some lines were ellipsized, use -l to show in full.
连接并修改密码
$ mysql -uroot -h 127.0.0.1 -p
Enter password: # 输入密码

mysql> ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘MyNewPass4!’; # 修改密码为MyNewPass4!
Query OK, 0 rows affected (0.03 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.06 sec)

mysql> exit
Bye
连接测试

$ mysql -uroot -h 127.0.0.1 -p
Enter password: # 输入刚才设置的密码
mysql> show databases;
+——————–+
| Database |
+——————–+
| information_schema |
| mysql |
| performance_schema |
| sys |
+——————–+
4 rows in set (0.00 sec)

mysql> select user,host from mysql.user;
+—————+———–+
| user | host |
+—————+———–+
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+—————+———–+
3 rows in set (0.00 sec)
Docker
如果你的环境比较复杂,搭建起来较为麻烦,没关系,我们可以用docker的方式一键启动,而且还是跨平台的。

运行MySQL
$ docker run -d –name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
上面的指令中,我们运行了8.x的mysql版本,把3306映射出来了,这样可以通过127.0.0.1:3306进行访问,其次设置了root密码为123456。

分享此文:

  • 分享到 Twitter(在新視窗中開啟)
  • 按一下以分享至 Facebook(在新視窗中開啟)
  • 分享到 WhatsApp(在新視窗中開啟)
  • 按一下以分享到 Telegram(在新視窗中開啟)
  • 分享到 Pinterest(在新視窗中開啟)
  • 分享到 Reddit(在新視窗中開啟)
  • 按一下即可分享至 Skype(在新視窗中開啟)
  • 按一下即可以電子郵件傳送連結給朋友(在新視窗中開啟)
  • 點這裡列印(在新視窗中開啟)

相關


Linux資訊

Post navigation

PREVIOUS
WordPress如何定时更新已发布的内容
NEXT
天翼云盘 免费领取2T存储空间

發表迴響 取消回覆

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料。

More results...

Generic filters
Exact matches only
Search in title
Search in content
Search in excerpt
Filter by 分類
網站公告
Featured
限時免費
ESET NOD32
WINDOWS 10 &11 INSIDER PREVIEW
Windows 軟件下載
系統軟件
辦公軟件
圖像處理
影音媒體
網絡軟件
應用軟件
Mac 軟件下載
安卓軟件下載
網絡資訊
Mac資訊
Linux資訊
VPS資訊
NASA資訊
金融資訊
WhatsApp Stickers教學
WordPress資訊
WeChat資訊
PHP資訊
Plesk資訊
TensorFlow
教學資源
開源程序
網頁工具
SEO工具
醫療健康
旅遊及消閒
其他資訊
Content from
Content to
2018 年 12 月
一 二 三 四 五 六 日
 12
3456789
10111213141516
17181920212223
24252627282930
31  
« 11 月   1 月 »

分類

  • 網站公告
  • 限時免費
  • ESET NOD32
  • WINDOWS 10 &11 INSIDER PREVIEW
  • Windows 軟件下載
  • 系統軟件
  • 辦公軟件
  • 圖像處理
  • 影音媒體
  • 網絡軟件
  • 應用軟件
  • Mac 軟件下載
  • 安卓軟件下載
  • 網絡資訊
  • Mac資訊
  • Linux資訊
  • VPS資訊
  • NASA資訊
  • WhatsApp Stickers教學
  • WordPress資訊
  • WeChat資訊
  • PHP資訊
  • Plesk資訊
  • TensorFlow
  • 教學資源
  • 開源程序
  • 網頁工具
  • SEO工具
  • 醫療健康
  • 旅遊及消閒
  • 其他資訊

彙整

近期文章

  • 認識Diprotodon(雙門齒獸屬)的祖先最初代擁有大平足的有袋動物 2023-06-02
  • FF91量產交付賈躍亭能否靠FF還清負債?至少要賣8千輛 2023-06-02
  • 《暗黑破壞神4》再次聯動肯德基解鎖五種武器幻化 2023-06-02
  • 天文學家開發出獵取地外智能體技術特徵的新軟件 2023-06-02
  • 日本賽馬手撞線後猝死:前騎手嘲諷哀悼網友“偽君子”引爭議 2023-06-02
  • 龐巴迪開始試飛其混合翼Ecojet的第二架15%比例原型機 2023-06-02
  • 芯片太貴、日元還貶值日本智能手機大廠FCNT宣布破產 2023-06-02
  • iPhone 14 Plus是蘋果2023年Q1銷量最差機型但仍是第六暢銷的手機 2023-06-02
  • 對肉毒桿菌的研究又有突破- 新發現可以挽救生命 2023-06-02
  • 微軟宣稱的量子突破遭遇學界挑戰- 他們錯了嗎? 2023-06-02

熱門文章與頁面︰

  • 一鍵GHOST v2020.07.20 正式版-硬盤版/光盤版/優盤版/軟盤版
  • DP vs HDMI 誰才是遊戲玩家最佳選擇?
  • 打車叫到特斯拉不會開門很尷尬?官方介紹開關門方法
  • ESET NOD32 LICENSE KEY (UPDATED 2023-01-17)
  • Autodesk AutoCAD 2021 正式版註冊版-簡體/繁體中文/英文版
  • Netflix跨區買較便宜方案
  • 世界上有多少個國家
  • 微信消息撤回也沒用???這些辦法都能查看撤回的內容
  • Explorer Patcher:讓Windows 11恢復Windows 10的行為特徵
  • SketchUp Pro 2020 v20.0.363 x64 多語言中文​​註冊版-草圖大師

投遞稿件

歡迎各界人士投遞稿件到admin@wongcw.com

請提供以下資料:

1.你的名字

2.你的電郵

3.分類目錄

4.文章標題

5.文章摘要

6.文章內容

7.文章來源

 

聯繫我們

查詢,投稿,商務合作:
​admin@wongcw.com
​技術支援:
​support@wongcw.com
​客户服務:
​cs@wongcw.com

QQ群:833641851

快帆

MALUS

極度掃描

DMCA.com Protection Status

WONGCW 網誌

  • 免責聲明
  • 捐助我們
  • ThemeNcode PDF Viewer
  • ThemeNcode PDF Viewer SC
  • Events

服務器提供

本站使用之服務器由ikoula提供。

聯繫我們

查詢,投稿,商務合作:
​admin@wongcw.com
​技術支援:
​support@wongcw.com
​客户服務:
​cs@wongcw.com

QQ群:833641851

© 2023   All Rights Reserved.