安装步骤
1. 解压安装包
tar -xf mysql-8.0.33-el7-x86_64.tar.gz
2. 移动解压后的文件夹
mv mysql-8.0.33-el7-x86_64 mysql mv mysql /usr/local/
3. 创建mysql用户
useradd -s /sbin/nologin mysql
4. 设置权限
chown -r mysql:mysql /usr/local/mysql/ chown mysql:mysql /etc/my.cnf
5. 配置mysql
编辑 /etc/my.cnf
文件,覆盖为以下配置(可以把原配置注释掉):
# 客户端配置 [client] port = 3306 # mysql客户端连接的默认端口 socket=/usr/local/mysql/mysql.sock # mysql客户端连接的socket文件路径 # mysql服务器配置 [mysqld] user = mysql # 运行mysql服务的系统用户 basedir=/usr/local/mysql # mysql安装目录的路径 datadir=/usr/local/mysql/data # mysql数据文件的存储目录 port = 3306 # mysql服务器监听的端口号 character-set-server=utf8 # 服务器端默认字符集 pid-file = /usr/local/mysql/mysqld.pid # mysql服务器进程id文件的路径 socket=/usr/local/mysql/mysql.sock # mysql服务器使用的socket文件路径 bind-address = 0.0.0.0 # mysql服务器绑定的ip地址,0.0.0.0表示监听所有可用的网络接口 skip-name-resolve # 禁用dns解析,提高连接速度,但可能导致无法使用主机名连接 max_connections=2048 # 允许的最大并发连接数 default-storage-engine=innodb # 默认存储引擎,这里设置为innodb max_allowed_packet=16m # 允许的最大数据包大小,单位为字节 server-id = 1 # mysql复制中的唯一标识符,用于主从复制 sql_mode = strict_trans_tables,no_zero_in_date,no_zero_date,error_for_division_by_zero,no_engine_substitution # sql模式设置,定义了mysql应如何处理sql语句
6. 设置环境变量
echo "path=$path:/usr/local/mysql/bin" >> /etc/profile source /etc/profile
7. 初始化数据库
cd /usr/local/mysql/bin/ ./mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
8. 设置系统服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chmod x /etc/init.d/mysqld systemctl daemon-reload systemctl restart mysqld
9. 设置root密码
mysqladmin -u root password "123456"
10. 登录mysql并配置远程访问
mysql -u root -p123456
在mysql shell中执行:
create user 'root'@'%' identified by '123456'; grant all privileges on *.* to 'root'@'%'; flush privileges; alter user 'root'@'%' identified with mysql_native_password by '123456';
注意
- 安全性:在生产环境中,请务必设置强密码,并限制远程访问权限。
- 防火墙:确保服务器的防火墙允许3306端口的流量。
- selinux:如果启用了selinux,可能需要额外配置以允许mysql的网络访问。
- 备份:在修改配置或进行重要操作前,请务必备份数据库。