当前位置: > 数据库 > MySQL >

CentOS下安装mysql,实现远程链接及其常见问题解决方案

时间:2019-04-04 14:36来源:linux.it.net.cn 作者:IT
对于经常用windows服务器的我来说,用Linux服务器感到压力山大,但是又压力才有动力,记录一下本人再CentOS下安装mysql遇到的坑,望广大同行介以参考,引以为戒;步骤如下:

检查是否安装过mysql:rpm -qa | grep -i mysql;如安装过通过yum -y remove卸载
官网下载安装包:https://dev.mysql.com/downloads/mysql/
利用xftp将压缩包上传到:/usr/local下
进入Xshell连接服务器,通过:cd user/local进入压缩文件目录;输入:dir查看文件是否存在,输入:sudo tar -zxvf+文件名,解压文件
登录xftp,重命名解压的文件,改为mysql
添加用户组:groupadd mysql
添加用户mysql 到用户组mysql:useradd -g mysql mysql
进入安装mysql软件目录:cd /usr/local/mysql
改当前目录拥有者为mysql用户:chown -R mysql:mysql ./
安装数据库:./scripts/mysql_install_db --user=mysql
修改当前目录拥有者为root用户: chown -R root:root ./
修改当前data目录拥有者为mysql用户:chown -R mysql:mysql data
数据库安装完毕,添加开机启动:cp support-files/mysql.server /etc/init.d/mysql
启动mysql服务:执行命令service mysql start,执行命令:ps -ef|grep mysql 看到mysql服务说明启动成功
修改mysql的root用户密码:./bin/mysqladmin -u root password ‘密码’;
检查是否安装成功:mysql -uroot -p
16-1:提示输入密码:输入设置的密码(终端看不到输入结果不用管),回车
16-2:出现:Welcome to the MySQL monitor代表成功,输入 use mysql;出现:
Database changed代表成功
16-3:输入一条sql语句测试:select * from user;出现结果代表成功(必须输入分号
切记)
16-3:输入 \q,推出mysql编辑,出现Bye代表成功
至此mysql已经安装完成,亲测可用,接下来尝试本地链接服务器数据库

进入输入sql语句的地方(即:上一步的16-1/16-2)输入:GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY 密码 WITH GRANT OPTION;对所有账户开放权限
使命令及时生效:FLUSH PRIVILEGES;
查询用户,SELECT DISTINCT CONCAT(‘User: ‘’’,user,’’’@’’’,host,’’’;’) AS query FROM mysql.user; 出现:User: ‘root’@’%’; 代表成功
输入\q推出MySQL编辑
查看防火墙状态:firewall-cmd --state
停止firewall:systemctl stop firewalld.service
禁止firewall开机启动:systemctl disable firewalld.service
至此服务器工作已经完成,本地用第三方工具链接服务器(本人用的SQLyog)
输入用户名、密码、服务器ip点击连接即可;
常见错误排除及注意事项:

输入sql语句完成后必须加英文版分号
进行用户登录时出现:ERROR 1044 (42000): Access denied for user ‘’@‘localhost’ to database ‘mysql’,代表存在用户名为空的账户即匿名账户,导致登录的时候是虽然用的是root,但实际是匿名登录的。
解决方法:
2-1.关闭mysql:service mysqld stop
2-2.屏蔽权限:mysqld_safe --skip-grant-table
2-3.进入mysql命令行删除用户为空的数据: delete from user where USER=’’;
2-4.及时生效:FLUSH PRIVILEGES;
忘记密码的情况处理:
解决方法:
3-1:利用xftp进入mysql安装路径(/usr/local/mysql),找到my.cnf文件编辑
3-2:在[mysqld]下添加: skip-grant-tables
3-3:进入Xshell,重启mysql服务
3-4:输入:mysql -uroot -p,出现输入密码提示,不用管直接回车
3-5:选择数据库:use mysql;
3-6:重设密码:UPDATE user SET PASSORD =password(“passwd”) WHERE USER= ‘root’;
3-7:即时生效:flush privileges;
3-8:退出:\q
3-8:删除添加的skip-grant-tables,并重启mysql服务



(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容