执行安装命令
安装命令:
yum install mysql-develyum install mysqlyum install mysql-server
一般安装mysql和mysql-devel都成功,但是安装mysql-server失败,会出现以下的提示:
# yum install mysql-serverLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfile* base: mirrors.sina.cn* extras: mirrors.sina.cn* updates: mirrors.sina.cnNo package mysql-server available.Error: Nothing to do
错误是因为 CentOS 7 版本将 MySQL 数据库软件从默认的程序列表中移除,用 Mariadb 代替了。
解决yum install mysql安装错误
针对这个错误,有2个解决方案
方案1: 安装mariadb
MariaDB 数据库管理系统是 MySQL 的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了 MySQL 后,有将 MySQL 闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB 的目的是完全兼容 MySQL ,包括API和命令行,使之能轻松成为 MySQL 的代替品。
安装命令:
yum install mariadb-server mariadb
mariadb数据库的相关命令:
#启动MariaDBsystemctl start mariadb#停止MariaDBsystemctl stop mariadb#重启MariaDBsystemctl restart mariadb#设置开机启动systemctl enable mariadb
连接 MySQL 的命令:
# mysql -u root -pEnter password:Welcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 3Server version: 5.5.41-MariaDB MariaDB ServerCopyright (c) 2000, 2014, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || test |+--------------------+rows in set (0.00 sec)MariaDB [(none)]>
方法2 官网下载安装mysql-server
# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm# rpm -ivh mysql-community-release-el7-5.noarch.rpm# yum install mysql-community-server
如果执行wget的时候,提示wget命令没有找到的话,就需要安装一下wget
错误提示如下:
这时候需要安装wget:
yum -y install wget

安装好以后就可以继续执行命令了;
MySQL 安装完成后,重启一下,就可以连接了。
重启 MySQL 和连接命令:
service mysqld restartmysql -u root

配置MySQL
连接MySQL后,需要进行一些初始的配置。
设置密码:
#最后的'123'就是你要设置的密码,这里设置成123
set password for 'root'@'localhost' =password('123');
加上编码配置:
编辑MySQL的配置文件,在文件的末尾加上默认编码设置。
MySQL配置文件在 /etc/my.cnf,在文件末尾添加以下配置:
[mysql]
default-character-set=utf8
这里的字符编码必须和 /usr/share/mysql/charsets/Index.xml 中的名称一致。
远程连接设置:
#把在所有数据库的所有表的所有权限赋值给位于所有IP地址的root用户。
#123 就是 远程登陆所输入的密码
mysql> grant all privileges on *.* to root@'%'identified by '123';
如果这时候,还是不能远程连接的话,有可能是系统的防火墙拦截了。
在防火墙里面打开MySQL的3306端口:
#增加3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#重新加载配置,使配置生效
firewall-cmd --reload
如下图:
这时候就可以成功连接上了。
如果想了解更多防火墙配置,请看:[防火墙配置]
