赞
踩
就是找到历史版本;
本次学习,我们使用MySQL-8.0.26版本;
由于,我们在linux-CentOS-7环境下学习使用,所以,需要使用虚拟机;
虚拟机信息==10.0.0.51-db01 1核2G内存
[root@db01 ~]# rz -E
[root@db01 ~]# ll
...............
-rw-r--r-- 1 root root 914806904 3月 23 17:07 mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz
[root@db01 ~]# tar xf mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz -C /usr/local/
[root@db01 ~]# ll /usr/local/
...............
drwxr-xr-x 9 root root 129 3月 23 17:16 mysql-8.0.26-linux-glibc2.12-x86_64
查看安装包大小,是否为1.5g
[root@db01 ~]# du -sh /usr/local/mysql-8.0.26-linux-glibc2.12-x86_64/
1.5G /usr/local/mysql-8.0.26-linux-glibc2.12-x86_64/
为了方便管理
[root@db01 ~]# ln -s /usr/local/mysql-8.0.26-linux-glibc2.12-x86_64 /usr/local/mysql
[root@db01 ~]# vim /etc/profile
..............
export PATH="$PATH:/usr/local/mysql/bin"
[root@db01 ~]# source /etc/profile
MySQL在linux-CentOS-7必备的依赖,不安装依赖就无法使用MySQL;
[root@db01 ~]# yum -y install libaio-devel
提示:MySQL运行需要/usr/lib64/libncurses.so.5作为运行依赖,
CentOS-8的系统,默认没有这个依赖,有其他解决方案;
#第一种方案:将/usr/lib64/libncurses.so.6,软连接成/usr/lib64/libncurses.so.5;
[root@db01 ~]# ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5#
#第二种方案:在线安装依赖包;
[root@db01 ~]# yum -y install ncurses-compat-libs
[root@db01 ~]# mysql -V
mysql Ver 8.0.26 for Linux on x86_64 (MySQL Community Server - GPL)
[root@db01 ~]# mysql --version
mysql Ver 8.0.26 for Linux on x86_64 (MySQL Community Server - GPL)
[root@db01 ~]# useradd -u 1001 mysql -M -s /sbin/nologin
[root@db01 ~]# id mysql
uid=1001(mysql) gid=1001(mysql) 组=1001(mysql)
[root@db01 ~]# mkdir -p /data/80/{data,logs}
[root@db01 ~]# chown -R mysql.mysql /data/
[root@db01 ~]# ll /data/
总用量 0
drwxr-xr-x 4 mysql mysql 30 3月 23 17:30 80
实际就是,不设置初始化密码的意思;
初始化之前,如果data目录和日志目录下有东西,需要全部删除,否则无法初始化成功;
[root@db01 ~]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/80/data
--initialize-insecure #初始化的命令
--user=mysql #指定数据库的操作用户
--basedir=/usr/local/mysql #基础目录(mysql的原始目录)
--datadir=/data/80/data #指定数据目录在哪里?
会随机给你生成一个密码;一般不用;
[root@db01 ~]# mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/80/data
#5.6版本
mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/80/data
#
#5.7版本和8.0版本
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/80/data
[root@db01 ~]# vim /etc/my.cnf
[mysql]
socket=/tmp/mysql.sock
[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/data/80/data
socket=/tmp/mysql.sock
innodb_fast_shutdown=0
[root@db01 ~]# vim /usr/lib/systemd/system/mysql.service
[Unit]
Description=MySQL8.0 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#看着一行,需要配置的内容路径;
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE=5000
[root@db01 ~]# systemctl daemon-reload
[root@db01 ~]# systemctl enable --now mysql.service
[root@db01 ~]# netstat -tnulp
之后会讲......
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。