今天部署这个网站使用mysql发现,我使用的服务器是阿里云ECS,mysql安装过程中common.rpm安装不上,经过不断的查找原因,发现阿里云CentOS7默认安装MariaDB而不是MySQL,而且yum服务器上也移除了MySQL相关的软件包。
1、因为MariaDB和MySQL可能会冲突,故先卸载MariaDB,
# rpm -qa | grep -i mariadb # rpm -e --nodeps mariadb-xxx
★ 检查服务器是否安装了mysql,如果安装了,也需要卸载。
# rpm -qa|grep mysql # rpm -e --nodeps mysql-xxx
2、到mysql的官网下载最新版mysql的rpm集合包:mysql-5.7.18-1.el6.x86_64.rpm-bundle.tar,
3、上传mysql-5.7.18-1.el6.x86_64.rpm-bundle.tar到linux服务器,并解压tar包,
# tar -xf mysql-5.7.18-1.el6.x86_64.rpm-bundle.tar
4.按指定顺序安装mysql组件,
# rpm -ivh mysql-community-common-5.7.18-1.el6.x86_64.rpm # rpm -ivh mysql-community-libs-5.7.18-1.el6.x86_64.rpm # rpm -ivh mysql-community-client-5.7.18-1.el6.x86_64.rpm # rpm -ivh mysql-community-server-5.7.18-1.el6.x86_64.rpm
5、不出意外mysql应该已经安装成功。
6、启动mysql:service mysqld start
7、修改MySQL配置文件:vim /etc/my.cnf,在文件末尾加上:skip-grant-tables
8、重启服务:service mysqld restart
9、现在可以使用无密码登陆mysql了,登陆后修改密码:
# mysql -uroot -p mysql> use mysql mysql> update user set password_expired='N' where user='root’; mysql> update user set authentication_string=password('123456') where user=‘root’; mysql> flush privileges;
10、修改后注意删除my.cnf中的skip-grant-tables并重启服务
11、开启远程连接服务(前提是防火墙开放tcp/3306端口)
mysql> use mysql mysql> update user set host='%' where user='root'; mysql> flush privileges;
12、【重要】当所有配置都弄完了,你以为就能像在windows上使用mysql工作了吗?还是添加/修改my.cnf吧
★mysql 5.7 默认开启某些sql_mode禁止了我们的开发和使用体验。
故需要在my.cnf中做如下配置:
# 忽略表名大小写问题 lower_case_table_names=1 # mysql 5.7默认是开启了 only_full_group_by 模式,但开启这个模式后,原先的 group by 语句就报错,做如下配置 sql_mode='STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
上一篇:没有了
Copyright ©2017-2024 uzen.zone
湘ICP备17013178号-3