美文网首页我爱编程
MySQL安装及配置(CentOS )

MySQL安装及配置(CentOS )

作者: mozre | 来源:发表于2018-03-05 19:14 被阅读0次
  1. 添加mysql yum respository
  • 添加 MySQL Yum Repository 到你的系统 repository 列表中,执行
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm   (可根据版本调整)
yum localinstall mysql-community-release-el7-5.noarch.rpm 
  • 验证是否添加成功 yum repolist enabled | grep "mysql.-community." 若出现以下提示表示成功
mysql-connectors-community/x86_64 MySQL Connectors Community                  36
mysql-tools-community/x86_64      MySQL Tools Community                       47
mysql56-community/x86_64          MySQL 5.6 Community Server                 327


  • 查看MySQL版本: yum repolist all | grep mysql 其中enable表示可使用
mysql-connectors-community/x86_64 MySQL Connectors Community     enabled:     36
mysql-connectors-community-source MySQL Connectors Community - S disabled
mysql-tools-community/x86_64      MySQL Tools Community          enabled:     47
mysql-tools-community-source      MySQL Tools Community - Source disabled
mysql55-community/x86_64          MySQL 5.5 Community Server     disabled
mysql55-community-source          MySQL 5.5 Community Server - S disabled
mysql56-community/x86_64          MySQL 5.6 Community Server     enabled:    327
mysql56-community-source          MySQL 5.6 Community Server - S disabled
mysql57-community-dmr/x86_64      MySQL 5.7 Community Server Dev disabled
mysql57-community-dmr-source      MySQL 5.7 Community Server Dev disabled


可以通过以下语句启用某些版本:

yum-config-manager --disable mysql56-community
yum-config-manager --enable mysql57-community-dmr

或通过直接修改:/etc/yum.repos.d/mysql-community.repo 其中 enabled=0 是指禁用,enabled=1 指启用。

# Enable to use MySQL 5.6
[mysql56-community]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

==注意: 任何时候,只能启用一个版本。==

  • 查看当前安装的版本 yum repolist enabled | grep mysql
    mysql-connectors-community/x86_64        MySQL Connectors Community           14
    mysql-tools-community/x86_64             MySQL Tools Community                17
    mysql56-community/x86_64                 MySQL 5.6 Community Server          139
    
  1. 安装MySQL
  • 执行命令: yum install mysql-community-server Yum 会自动处理 MySQL 与其他组件的依赖关系 根据提示安装即可
  • 查看MySQL安装信息 rpm -qi mysql-community-server.x86_64 0:5.6.24-3.el7
  • 查看是否安装并配置完成:whereis mysql
  1. 启动和结束MySQL服务
  • 启动Server: systemctl start mysqld
  • 查看MySQL状态: systemctl status mysqld
  • 关闭MySQL:systemctl stop mysqld
  1. 在安装某些版本的MySQL会给root设置一个随机的密码,获取或修改密码:
  • 可能在以下会出现某些提示:在/var/log/mysqld.log中提示随机生成一个密码在/root/.mysql_secret 或其他目录,进入对应文件即可查看初始随机密码
  • 若为找到上诉文件,则可通过进入安全模式的方式修改root用户密码
    1. 停止MySQL服务:sudo service mysql stop
    2. 安全模式下启动MySQL: sudo mysqld_safe --skip-grant-tables --skip-networking &
    3. 登录MySQL: mysql -u root
    4. 重设密码:
    mysql> use mysql;  
    mysql> update user set password=PASSWORD("password") where User='root';  
    mysql> flush privileges;
    mysql> quit
    
    1. 登录:mysql -u root -ppassword (p与密码之前没有空格)
  1. 关闭防火墙或修改防火墙使其可以远程登录
  • iptables(CentOS 7.x版本之前用法,不推荐)
    打开 iptables 的配置文件:
    1. vi /etc/sysconfig/iptables
    2. 添加:
    -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state –state NEW -m udp -p udp –dport 3306 -j ACCEPT
    
    1. 重启iptables生效:service iptables restart
    2. 若没有/etc/sysconfig/iptables 文件则安装程序:yum install iptables-services
  • 执行以下命令使3306端口可用
    firewall-cmd --permanent --zone=public --add-port=3306/tcp
    firewall-cmd --permanent --zone=public --add-port=3306/udp
    
    执行:firewall-cmd --reload 使规则生效
  1. 关闭防火墙远程访问依然不可用
  • 可能是MySQL初始化时只允许本地可访问
    1. 修改表使远程登录可用:
    mysql> use mysql
    mysql> update user set host = '%' where user = 'root';  
    mysql> select host, user from user; 
    
    1. 授予权限,使某指定主机或所有主机都可访问
    mysql -h localhost -u root 
    mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION 
    mysql> FLUSH PRIVILEGES 
    
    GRANT ALL PRIVILEGES ON dk.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY   
    'mypassword' WITH GRANT OPTION;   
    FLUSH   PRIVILEGES;  
    
  • 若根据以上方法修改后任然不可用,请查看你的service是否真的启动,处于监听状态。查看接口监听状态: netstat -apn | grep 3306
    tcp6       0      0 :::3306                 :::*                    LISTEN      7754/mysqld 

相关文章

网友评论

    本文标题:MySQL安装及配置(CentOS )

    本文链接:https://www.haomeiwen.com/subject/yctkfftx.html