zoukankan      html  css  js  c++  java
  • #阿里云 CentOS 8.2 部署 MySQL 5.7.32

    MySQL下载

    https://downloads.mysql.com/archives/community/
    

    添加用户组

    [root@localhost /]# groupadd mysql
    [root@localhost /]# useradd -r -g mysql mysql
    

    解压mysql 到 /usr/local

    新建data目录

    [root@localhost /]# mkdir /usr/local/mysql/data
    

    更改mysql目录下所有的目录及文件夹所属的用户组和用户,以及权限

    [root@localhost /]# chown -R mysql:mysql /usr/local/mysql
    [root@localhost /]# chmod -R 755 /usr/local/mysql
    

    编译安装并初始化mysql,务必记住初始化输出日志末尾的密码(数据库管理员临时密码)

    [root@localhost /]# cd /usr/local/mysql/bin
    [root@localhost bin]# ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
    

    编辑配置文件my.cnf,添加配置如下

    lower_case_table_names:是否区分大小写,1表示存储时表名为小写,操作时不区分大小写;0表示区分大小写;不能动态设置,修改后,必须重启才能生效:
    character_set_server:设置数据库默认字符集,如果不设置默认为latin1
    innodb_file_per_table:是否将每个表的数据单独存储,1表示单独存储;0表示关闭独立表空间,可以通过查看数据目录,查看文件结构的区别;

    测试启动mysql服务器

    [root@localhost /]# /usr/local/mysql/support-files/mysql.server start
    
    

    添加软连接,并重启mysql服务

    [root@localhost /]#  ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 
    [root@localhost /]#  ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
    [root@localhost /]#  service mysql restart
    

    登录mysql,修改密码(密码为步骤5生成的临时密码)

    开放远程连接

    mysql>use mysql;
    msyql>update user set user.Host='%' where user.User='root';
    mysql>flush privileges;
    

    设置开机自动启动

    1、将服务文件拷贝到init.d下,并重命名为mysql
    [root@localhost /]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
    2、赋予可执行权限
    [root@localhost /]# chmod +x /etc/init.d/mysqld
    3、添加服务
    [root@localhost /]# chkconfig --add mysqld
    4、显示服务列表
    [root@localhost /]# chkconfig --list
    

    tips:

    一切就绪,还是从window 连接不上 mysql呢? 阿里云需要开启 安全组规则,开放3306 端口。不然- -一切都没戏。

    查看防火墙

    systemctl使用
    systemctl unmask firewalld #执行命令,即可实现取消服务的锁定
    systemctl mask firewalld # 下次需要锁定该服务时执行
    systemctl start firewalld.service #启动防火墙
    systemctl stop firewalld.service #停止防火墙
    systemctl reloadt firewalld.service #重载配置
    systemctl restart firewalld.service #重启服务
    systemctl status firewalld.service #显示服务的状态
    systemctl enable firewalld.service #在开机时启用服务
    systemctl disable firewalld.service #在开机时禁用服务
    systemctl is-enabled firewalld.service #查看服务是否开机启动
    systemctl list-unit-files|grep enabled #查看已启动的服务列表
    systemctl --failed #查看启动失败的服务列表
    
    
    
    查看防火墙某个端口是否开放
    firewall-cmd --query-port=3306/tcp
    
    开放防火墙端口3306
    firewall-cmd --zone=public --add-port=3306/tcp --permanent
    
    查看防火墙状态
    systemctl status firewalld
    
    关闭防火墙
    systemctl stop firewalld
    
    打开防火墙
    systemctl start firewalld
    
    开放一段端口
    firewall-cmd --zone=public --add-port=40000-45000/tcp --permanent
    
    查看开放的端口列表
    firewall-cmd --zone=public --list-ports
    
    firewall-cmd --permanent --add-port=3306/tcp
    
    firewall-cmd --reload
    
    
    netstat -lnpt
    netstat -na
    

    mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
    

  • 相关阅读:
    AsyncHttpClient使用
    索引
    jdbc--取大量数据
    oracle--with as
    spring--mybatis事务总结
    Elasticsearch环境搭建
    使用idea远程调试
    redis分布式锁的实现
    知识梳理
    Zookeeper
  • 原文地址:https://www.cnblogs.com/kutsu/p/14013332.html
Copyright © 2011-2022 走看看