阿里云Centos7上安装MySQL教程

时间:2022-12-10 17:49:28

1 基本安装过程

1.查看系统是否安装了mysql软件

# rpm -qa|grep -i mysql

2.将已经安装过的软件卸载掉。注意:这样的卸载是不彻底,不过这里够用了

# yum remove '软件名'

3.CentOS 7yum源中默认是没有mysql的。所以,为了解决这个问题我们首先下载安装mysqlrepo源。

# wget http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm

4. 安装mysqlrepo

# rpm -ivh mysql57-community-release-el7-7.noarch.rpm

安装之后会获得/etc/yum.repos.d/mysql-community.repo/etc/yum.repos.d/mysql-community-source.repo两个源,可以去相应的路径下查看一下。

5.开始安装

# yum install mysql-server
# yum install mysql-devel
# yum install mysql
# rpm -qa | grep -i mysql

6.服务开关操作

#执行其中之一就可以

# service mysqld status     查看mysql当前的状态
# systemctl status mysqld # service mysqld stop 停止mysql
#systemctl stop mysqld # service mysqld restart 重启mysql
#systemctl restart mysqld # service mysqld start 启动mysql
# systemctl start mysqld

7.设置MySQL开机启动

# systemctl enable mysqld

8.启动MySQL服务进程

# systemctl start mysqld

或者
# service mysqld start

2 无法登录问题解决

1.在/etc/my.cnf文件中添加skip-grant-tables。这里注意一下:我的skip-grant-tables放到了文件最后

skip-grant-tables:的作用就是跳过了mysql的用户验证

然后直接输入mysql,不需要带任何登录参数直接回车就可以登陆上数据库;

2.重启mysqlservice mysqld restart,重启之后我们直接输入mysql即可进入mysql数据库,因为我们已经跳过了mysql数据库的用户验证。

进入数据库之后执行下面的命令

mysql> use mysql;

mysql> show tables;

select user,authentication_string from user;

update mysql.user set authentication_string=password('your password') where user='root';

flush privileges;

exit

3.恢复/etc/my.cnf文件

恢复/etc/my.cnf,将skip-grant-tables删除或者注释掉。

4.重启mysqlservice mysqld restart

到此为止我们就解决了mysql安装之后登录不知道密码的问题。

3 重置密码问题

下面顺便讲解一下这个问题:

安装完mysql 之后,登陆以后,不管运行任何命令,总是提示这个错误:

You must reset your password using ALTER USER statement before executing this statement

处理步骤为:依次执行下面三条代码。

SET PASSWORD = PASSWORD('your new password');

ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

flush privileges;

这里要注意的是your new password 必须包含数字,字母包含大小写,标点符号。不然好像是不能通过的。

完成以上三步退出再登,使用新设置的密码就行了,以上除了 your new password 需要修改成新密码外,其他原样输入即可。

4.解决远程客户端无法连接MySQL数据库

1.创建新的安全组规则,对外开放3306端口访问授权

2.在本机登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'。

mysql -u root -p

mysql>use mysql;

mysql>select host,user from user;

mysql>update user set host = '%' where user ='root';

mysql>flush privileges;

mysql>select host,user from user;

第一句是以权限用户root登录

第二句:选择mysql库

第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)

第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址

第五句:刷新MySQL的系统权限相关表

第六句:再重新查看user表时,有修改

3.重起mysql服务即可完成。service mysqld restart

详细安装教程:018-阿里云Centos 7上面安装mysql教程