最近因工作需要要在linux上部署Mysql,以前在公司都是公司的DBA安装好了的,直接用就行了的,就算是本地windows图形化界面安装也是轻而易举的事情,这次在Linux上安装的确花了不少力气,然后上网着了一下,一大堆的狗屁专家什么二进制安装,什么rpm安装通通试过每一个行,连安装目录都没有找到装完后,真实误人子弟,5.7和之前版本安装方式也有了很大的不通,特别是对新手来说复杂性大大增强,来看看我的吧,希望能帮到大家,废话不多说直接上安装步骤。
Step1: 检测系统是否自带安装mysql
#yum list installed | grep mysql
Step2: 删除系统自带的mysql及其依赖
命令:
# yum -y remove mysql-libs.x86_64
如果是rpm安装方式卸载可以用
rpm -e --nodeps 命令去卸载
Step3: 给CentOS添加rpm源,并且选择较新的源
命令:
#wget dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
如果获取不到mysql-community-release-el6-5.noarch.rpm的话可以百度搜索下载的linux上再往下执行
#yum localinstall mysql-community-release-el6-5.noarch.rpm
# yum repolist all | grep mysql
# yum-config-manager --disable mysql55-community
# yum-config-manager --disable mysql56-community
# yum-config-manager --enable mysql57-community-dmr
# yum repolist enabled | grep mysql
Step4:安装mysql服务器
命令:
# yum install mysql-community-server
修改数据库编码。
为了保证数据库能正确处理中文,我们需要设定数据库默认的编码为utf8。修改/etc/my.cnf文件,并在其中加入以下内容:
[plain] view plain copy 在CODE上查看代码片派生到我的代码片
[client]
default-character-set=utf8mb4
[mysqld]
character_set_server=utf8mb4
启动MySQL(下面的命令请执行两次。非常奇怪,不知为什么第一次一定失败,第二次却一定成功),如果还是失败,直接删除/var/lib/mysql目录下的所有文件,再次执行初始化命令,成功。
[plain] view plain copy 在CODE上查看代码片派生到我的代码片
service mysqld start
6. 获得MySQL初始密码
[plain] view plain copy 在CODE上查看代码片派生到我的代码片
grep 'temporary password' /var/log/mysqld.log
7. 使用上一步获得的密码登录MySQL,并修改初始密码
[plain] view plain copy 在CODE上查看代码片派生到我的代码片
mysql -uroot -p'初始密码'
8Zjf888***!就是新密码DBA团队都会有相关规定,如密码必须同时包括:数字+大小写字母+特殊字符,长度16个等。
alter user 'root'@'localhost' identified by '8Zjf888***!';
刷新系统权限表
flush privileges;
退出
quit;
防火墙开放3306端口
1、打开防火墙配置文件
vi /etc/sysconfig/iptables
2、增加下面一行
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
狗屁专家不会告诉你要在22的下面配如果你配在了最后一行哈哈,恭喜你的防火墙配置失败了,你还找半天,误人子弟啊3、重启防火墙
service iptables restart
Mysql允许远程登录
mysql> use mysql;
mysql> update user set host ='%'where user ='root';
mysql> flush privileges;
mysql> quit
最后连接试试
本文章是原创文章转载请声明,关注Jimmy_zjf888,更多云计算分布式系统教程的传创博客帮你解决眼前难题