1.下载tar包:
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.28-linux-glibc2.17-x86_64-minimal.tar.xz
2.解压
tar -xvf mysql-8.0.28-linux-glibc2.17-x86_64-minimal.tar.xz
mv mysql-8.0.28-linux-glibc2.17-x86_64-minimal mysql
mv mysql /usr/local
cd /usr/local/mysql
mkdir data
3.编辑 my.cnf
vi /etc/my.cnf
文件内容为:
[client]
socket=/tmp/mysql/mysql.sock
[mysqld]
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
lower_case_table_names=1
[mysqld_safe]
log-error=/usr/local/mysql/log/mysql_error.log
pid-file=/usr/local/mysql/log/mysql.pid
slow_query_log_file=/usr/local/mysql/log/mysql_slow.log
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
4.创建用户
groupadd mysql
useradd -g mysql mysql
5.更改目录权限
chown -R mysql:mysql /tmp/mysql
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /tmp/mysql /usr/local/mysql
6. 初始化
cd /usr/local/mysql
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
启动 mysql
su mysql (用mysql用户启动)
./support-files/mysql.server start
7.用初始密码,因此需要修改密码。
1.用初始密码登录
mysql -u root -p
输入密码是直接回车。
1.更改密码
ALTER user ‘root’@‘localhost’ IDENTIFIED BY ‘root’;
这样就修改好密码了。
8.创建新用户用于远程登录
CREATE USER ‘root’@‘%’ IDENTIFIED BY ‘111111’;
设置为远程登录
GRANT ALL PRIVILEGES ON . TO ‘root’@‘%’ WITH GRANT OPTION ;(这个命令ok)
GRANT ALL ON 表示所有权限,% 表示通配所有 host,可以访问远程。
刷新权限
所有操作后,应执行
flush privileges;
9.重启mysql
[root@VM-4-3-centos tmp]# su mysql
[mysql@VM-4-3-centos tmp]$ cd /usr/local/mysql
[mysql@VM-4-3-centos mysql]$ cd support-files/
[mysql@VM-4-3-centos support-files]$ ./mysql.server restart
docker安装mysql
docker pull mysql:8.0.30
docker run -d --name mysql -p 3306:3306 -e TZ=Asia/Shanghai -e MYSQL_ROOT_PASSWORD=xxxx -v /opt/services/mysql/conf:/etc/mysql/conf.d -v /opt/services/mysql/data:/var/lib/mysql -v /opt/services/mysql/logs:/var/log mysql:8.0.30
create user 'xxx'@'%' identified by 'xxxxxxxx';
grant all PRIVILEGES on *.* to 'xxx'@'%'
flush PRIVILEGES
mysql备份多个数据库
docker exec -it mysql /bin/bash
cd /var/lib/mysql
mysqldump -u root -p --databases nacos_config quartz seata sill_cms sill_common sill_finance sill_member sill_oms sill_payment sill_product sill_sys sill_wms sys xiu xxl_job > mysql_back.sql