win10 搭建 linux 虚拟机局域网,安装 MySQL

为了完成搭建 MySQL 主从数据库的任务,在自己电脑上从头搭建环境。遇到的问题和解决方法在这里做一一记录。

问题1:

使用 VMware 安装虚拟机时,出现「not enough free space on disks」的提示。

解决方法:在配置虚拟机硬盘大小时,应大于等于4GB,否则就会报这个错误。

安装 JDK 记录:

  • 使用su root命令切换至 root 用户。
  • 使用rpm -qa | grep java查看本机是否已安装 Java。
  • 使用yum -y list java*查看可以下载安装的 Java 包。
  • 使用yum -y install java-1.8.0-openjdk*安装1.8.0版本的 JDK。

问题2:

安装 JDK 时,出现「Disk Requirements: At least 821MB more space needed on the / filesystem.」的错误提示。

解决方法:在 VMware 上扩展磁盘后,还需在 linux 上执行硬盘空间的挂载。中间遇到较多问题难以解决,笔者对于 linux 硬盘挂载的原理也不甚了解,目前 linux 虚拟机上没有什么重要的东西,基于时间原因决定放弃,重新安装虚拟机。

总结:安装虚拟机的时候,千万不要心疼硬盘空间,能省不少麻烦!


Linux 网络配置记录:

网络连接设置配置文件:

  • /etc/sysconfig/network
  • /etc/sysconfig/network-scripts/ifcfg-eth0
  • /etc/sesolv.conf
# network 基础配置:
NETWORKING=yes
HOSTNAME=localhost.localdomain
GATEWAY=192.168.129.2
# ifcfg-eth0 基础配置:
DEVICE="eth0"
#BOOTPROTO="dhcp"
BOOTPROTO="static"
IPADDR=192.168.129.129
NETMASK=255.255.255.0
HWADDR="00:0C:29:56:8F:AD"
IPV6INIT="no"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="ba48a4c0-f33d-4e05-98bd-248b01691c20"
DNS1=192.168.129.2
# resolv.conf 基础配置:
nameserver 192.168.129.2

——查阅自zhanjindong 博客


问题3:

在局域网中有两台 linux 虚拟机,网络连接使用的是默认的 NAT,导致两个虚拟机的 IP 地址完全相同。

解决方法:连接方式更换为 Bridge 桥接模式,顺利解决。


卸载 MySQL 记录:

由于搭建 linux 虚拟机的目的是搭建 MySQL 集群,因此需要给两个虚拟机安装同样的 MySQL。
经检查,其中一个虚拟机中已安装 MySQL,因此把它卸载了。

  • rpm -qa | grep -i mysql检查机器上是否已安装 MySQL。
  • service mysql status检查 MySQL 运行状况。
  • 若运行中,service mysql stop关闭 MySQL 服务。
  • rpm -ev MySQL-client.x86_64进行卸载(需卸载所有已安装的服务,通常有多个)。
  • 若失败,可尝试yum remove mysql mysql-server mysql-libs mysql-server
  • find / -name mysql系统中残留的 MySQL 相关文件
  • rm -rf /usr/lib64/mysql删除这些文件。
  • userdel mysql&groupdel mysql删除 MySQL 用户及用户组。
  • 检查是否卸载干净:whereis mysql&more /etc/passwd | grep mysql&more /etc/shadow | grep mysql&more /etc/group | grep mysql

——参考自[潇湘隐者博客]


安装 MySQL 记录:

rpm -ivh mysql-community-libs-5.7.14-1.el6.x86_64.rpm
rpm -ivh mysql-community-client-5.7.14-1.el6.x86_64.rpm
rpm -ivh mysql-community-server-5.7.14-1.el6.x86_64.rpm```

  • service mysqld start启动 MySQL 服务。
  • vi /var/log/mysqld.log查找临时登陆密码。
  • 问题:登陆后修改密码时遇到无论设什么样的密码都报ERROR 1819 (HY000): Your password does not satisfy the current policy requirements,可先在 /etc/my.cnf 配置 validate-password=off,重启服务。
  • 修改 mysql 密码set password=`123`
  • 添加远程登陆用户。
use mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
  • 检查用户表,刷新内存权限。
mysql> select host,user from user;
+-----------+-----------+
| host      | user      |
+-----------+-----------+
| %         | root      |
| localhost | mysql.sys |
| localhost | root      |
+-----------+-----------+
3 rows in set (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
  • 设置防火墙3306端口开启。
vim /etc/sysconfig/iptables

添加一行:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
  • 重启防火墙。
service iptables restart

记录:配置虚拟机静态IP

  • 关闭 NetworkManager:
$ chkconfig NetworkManager off
$ service NetworkManager stop
Stopping NetworkManager daemon: [ OK ]
  • 配置网络配置文件:
$ cd /etc/sysconfig/network-scripts 
$ vim ifcfg-eth0
  • ifcfg-eth0 配置如下:
DEVICE="eth0"
#BOOTPROTO="dhcp"
BOOTPROTO="static"
IPADDR=192.168.1.111
NETMASK=255.255.255.0
HWADDR="00:0C:29:01:2E:9F"
#IPV6INIT="yes"
IPV6INIT="no"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="d15902b1-0564-4cd5-9be2-714936bbcd1f"
DNS1=192.168.1.1
GATEWAY=192.168.1.50 #宿主机器IP
BRIDGE="br0"                   
  • ifcfg-br0 配置如下:
DEVICE="br0"
BOOTPROTO="static"
ONBOOT="yes"
IPADDR=192.168.1.111
TYPE="Bridge"
GATEWAY=192.168.1.1
DNS1=192.168.1.1
  • 重启网络服务。

推荐阅读更多精彩内容