HardWareHome硬件之家论坛开发实记(1)--配置云

1. 购买云服务器

  因为学生优惠,所以选择了华为云的云服务器ECS和云数据库RDS。

  配置分别为:

    ECS:至强 单核、2GB DDR4、40GB 高I/O HDD、CentOS 7.6 64bit

    RDS:至强 双核、4GB DDR4、100GB 高I/O HDD、MySQL 5.7.27

  每个都是99元1年,甚是合算。

2. 配置云

  由于购买的是两个服务,所以需要将两个服务放置在同一个虚拟私有云VPC下,才能互通。

  而每个服务都需要配置自己的安全组策略,下面配置安全组策略。

  打开控制台:https://console.huaweicloud.com/console/?region=cn-north-4#/home   (北京四)

  最左侧导航栏选择 虚拟私有云VPC。

  

  右上角选择 创建虚拟私有云。

  

  下面是创建页面,填好红框中的内容即可。

  

  这个是已经创建好的。

  

  回到网络控制台,点开"访问控制"下拉列表中,找到"安全组"。

  点击右上角"创建安全组",首先创建数据库的安全组策略。

  

  点击"配置规则",在入方向规则和出方向规则只保留第一条,因为数据库的安全性,只允许内网的云服务器访问。

  

  

  再给云服务器配置一个安全组。

  

  根据业务需求,可以不用保留ICMP和443端口。

  

  

  准备工作就已经完成了。

3. 购买云

  

  

4. 云主机安装MySQL

  首先返回弹性云服务器控制台页面选择远程登录。

  

  使用root用户登陆。

  (1) 卸载自带的MariaDB

  // 查询已安装的 mariadb 版本
  rpm -qa | grep mariadb
  // 如果本地存在该软件,则会显示软件完整名称
  // 例如:mariadb-libs-5.5.64-1.el7.x86_64
  // 卸载 mariadb
  rpm -e --nodeps mariadb-libs-5.5.64-1.el7.x86_64

   安装MySQL之前需要安装 numactl.x86_64 依赖。

  // 先使用查询电脑是否已经安装了numactl依赖
  rpm -qa|grep numactl
  // 如果已经安装则不需要执行这条
  yum -y install numactl.x86_64

  (2) 下载MySQL

  // 进入目录 /usr/local  
  cd /usr/local

  使用wget下载MySQL源码包,网址:https://dev.mysql.com/downloads/mysql/

  

  wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz

  下载完毕后解压压缩包。

  tar -zxvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz

  修改解压出来的文件夹名为mysql。

  mv mysql-5.7.29-linux-glibc2.12-x86_64 mysql

  删除压缩包(尽量不要删除压缩包,以免安装失败需要重新安装)。

  rm mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz

  创建数据库存放位置。

  // 进入mysql目录
  cd mysql
  // 创建data目录
  mkdir data

  创建mysql用户组和mysql用户(前提是没有)。

  groupadd mysql
  useradd -g mysql mysql

  设置用户mysql密码。

  passwd mysql

  给mysql用户权限。

  chown -R mysql:mysql /usr/local/mysql

  

  (3) 安装并配置MySQL

  初始化数据库,红框里是初始密码,不要遗失,重置密码费劲。

  cd /usr/local/mysql/bin
  ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

  

  将mysql加入服务。

  cp /usr/local/mysql/support-files/mysql.server  /etc/init.d/mysql

  对mysql进行配置。

  // 进入目录 /etc
  cd /etc
  // 安装nano文本编辑器
  yum -y install nano
  // 创建my.cnf文件
  nano my.cnf
  // 写入以下内容
[mysql]
default-character-set=utf8mb4
[mysqld]
character_set_server=utf8mb4
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
lower_case_table_names = 1
log-error=/var/log/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid
  // 编辑完毕按Ctrl+O保存、Ctrl+X退出

  修改mysql开机自启文件。

  // 编辑文件
  nano /etc/init.d/mysql
  // 将basedir和datadir添加属性
  basedir=/usr/local/mysql
  datadir=/usr/local/mysql/data

  

  Ctrl+O保存、Ctrl+X退出文件,执行以下命令。

  chkconfig --add mysql
  chkconfig mysql on

  启动mysql。

  // 确保mysql关闭
  service mysql stop
  // 启动mysql
  service mysql start

  

  检查mysql是否成功设置开机自启。

  chkconfig | grep -i mysql
  // 3、4、5为on则成功,如果不是则执行
  chkconfig --level 345 mysql on

  

  重启系统,连接mysql。

  // 进入mysql目录
  cd /usr/local/mysql/bin
  // 执行mysql登陆,用给的默认密码登陆
  ./mysql -uroot -p
  // 然后出了 ERROR 1045错误,重置密码吧

  

  (4) 重置MySQL的root用户密码

  修改 /etc/my.cnf 文件。

  nano /etc/my.cnf
  // 在[mysqld]后加入以下文本
  skip-grant-tables

  重启mysql服务。

  service mysql restart

  

  执行以下命令跳过密码进入mysql进行修改密码。

  cd /usr/local/mysql/bin
  ./mysql
  // 重置密码,进入库mysql
  use mysql;
  // 重置密码,注意不同版本的密码列名不同,用desc user查看
  update user set authentication_string=password("wasd2020") where user="root";
  // 刷新缓存表
  flush privileges;
  // 退出
  quit;

  

  再修改 /etc/my.cnf 文件,将免密语句注释。

  nano /etc/my.cnf
  // 用#注释掉skip-grant-tables
  #skip-grant-tables

  

  保存退出并重启mysql服务。

  service mysql restart

  用新密码登陆mysql。

  

  (5) 其他配置

  为了快捷的使用mysql命令,将mysql配置到环境变量中。

  // 编辑 /etc/profile 文件
  nano /etc/profile
  // 在文件末尾添加以下文本
  export PATH=$PATH:/usr/local/mysql/bin
  // 保存并退出

  

  刷新配置文件。

  source /etc/profile

  测试一下,成功!

  

5. 云服务器连接云数据库

  语法:mysql -u用户 -h IP地址 -p密码

  示例:

  

原文地址:https://www.cnblogs.com/NyanKoSenSei/p/12253028.html