title: Mysql 8. 0安装 #标题tags: #标签
date: 2022-01-01
categories: mysql # 分类
下载并解压安装包
$ wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz$ tar Jxf mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz -C /data/ln -sf /data/mysql-8.0.26-linux-glibc2.12-x86_64 /data/mysql-3306
配置环境变量及配置文件
# 编辑配置文件(配置文件中的路径以实际的为准)$ cat > /etc/my.cnf << EOF[mysqld]basedir=/data/mysql-3306datadir=/data/mysql-3306/datapid-file=/data/mysql-3306/data/mysqld.pidlog-error=/data/mysql-3306/data/mysql.errsocket=/tmp/mysql.sock[client]socket=/tmp/mysql.sockEOF# 配置环境变量$ cat >> /etc/profile << 'EOF'PATH=${PATH}:/data/mysql-3306/bin/EOFsource /etc/profile
初始化并启动数据库
# 创建所需目录及用户并更改属主$ mkdir /data/mysql-3306/datauseradd -M -s /sbin/nologin mysqlchown -R mysql.mysql /data/mysql-*# 初始化数据库$ mysqld --initialize --user mysql# 修改数据库控制脚本$ sed -i 's#^basedir=.*#basedir=/data/mysql-3306/#' /data/mysql-3306/support-files/mysql.serversed -i 's#^datadir=.*#basedir=/data/mysql-3306/data/#' /data/mysql-3306/support-files/mysql.server# 添加为系统服务$ cp /data/mysql-3306/support-files/mysql.server /etc/init.d/mysqldchkconfig --add mysqld# 启动并设置为开机自启$ systemctl enable mysqldsystemctl start mysqld# 确认端口在监听$ ss -lnpt |grep 3306LISTEN 0 151 :::3306 :::* users:(("mysqld",pid=7607,fd=23))LISTEN 0 70 :::33060 :::* users:(("mysqld",pid=7607,fd=21))
修改mysql的root用户初始密码
#获取root用户的初始密码$ grep 'password' /data/mysql-3306/data/mysql.err | awk -F'root@localhost: ' '{print $2}'# 重置密码为123.com$ mysql -uroot -p -e "alter user 'root'@'localhost' identified by '123.com';" --connect-expired-password#使用新密码进行登录测试$ mysql -uroot -p123.com
授权用户可以指定IP访问
在mysql5.8之前的版本,可以直接grant all 去授权并创建用户,在5.8之后的版本就只能先创建用户,再授权访问了,如下:
# 创建用户$ create user 'root'@'%' identified by '123.com';# 授权$ grant all privileges on *.* to 'root'@'%' with grant option;
