可以这个命令查看当先系统的版本
cat /etc/redhat-release
mysql安装
直接执行这3行命令
yum install mysql
yum install mysql-server
yum install mysql-devel
一般安装mysql和mysql-devel都成功,但是安装mysql-server失败,如下:
# yum install mysql-server
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.sina.cn
* extras: mirrors.sina.cn
* updates: mirrors.sina.cn
No package mysql-server available.
Error: Nothing to do
CentOS 7 版本将MySQL数据库软件从默认的程序列表中移除,用mariadb代替了。
有2个解决方案
方案1 安装mariadb
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
安装命令是:
yum install mariadb-server mariadb
mariadb数据库的相关命令是:
systemctl start mariadb #启动MariaDB
systemctl stop mariadb #停止MariaDB
systemctl restart mariadb #重启MariaDB
systemctl enable mariadb #设置开机启动
执行 systemctl start mariadb 启动数据库之后就可以用mysql了
# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 5.5.41-MariaDB MariaDB Server
Copyright (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
yum -y install wget
安装好以后就可以继续执行剩下的两条命令了。
安装成功后重启mysql服务。和连接mysql了
service mysqld restart
mysql -u root
接下来就要配置mysql了
设置密码:
//最后的'123'就是你要设置的密码,这里设置成123
set password for 'root'@'localhost' =password('123');
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';
这时候,连接用远程连接还是不行。 提示连接成功。 其实还需要在防火墙里面配置3306接口为开放的。
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
这时候就可以成功连接上了。
本文基本是参考这篇文章的:
centos7 mysql数据库安装和配置
只是补充了2个点。wget下载和防火墙的设置。