文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Linux 安装mysql 5.7.21 可能遇到的问题归类

2024-04-02 19:55

关注
1、Done with "file /usr/share/mysql/czech/errmsg.sys from install of mysql-community-common-5.7.9-1.el6

解决方案:删除原来的包,重新安装。
yum -y remove mysql-libs-* 

2、安装数据库 初始化(这里是以root身份执行的):bin/mysqld --initialize --user=mysql

报错 [ERROR] --initialize specified but the data directory has files in  it. Aborting.
解决方案:密码初始化不成功  修改初始化密码
方法一: 
# /etc/init.d/mysqld stop 
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking & 
# mysql -u root mysql 
# mysql -u root mysql 
mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’; 
mysql> FLUSH PRIVILEGES; 
mysql> quit 
# /etc/init.d/mysqld restart 
# mysql -uroot -p 
Enter password: <输入新设的密码newpassword> 
mysql> 
注意 【’newpassword’   ’root’  】
ERROR 1054 (42S22): Unknown column '’root’' in 'where clause'
将单引号更新为双引号

注意 【Password】
ERROR 1054 (42S22): Unknown column 'password' in 'field list'
mysql> ERROR 1054 (42S22): Unknown column 'password' in 'field list' 
错误原因:mysql数据库下已经没有password这个字段了,password字段改成了authentication_string。
update mysql.user set authentication_string=PASSWORD('password') where User='root';

3、启动数据库服务 MySQL Daemon failed to start.  服务启动失败
3.1、查看mysqld的log文件 
# less /var/log/mysqld.log 
/usr/libexec/mysqld: Can't change dir to ‘XXX' (Errcode: 13) 
3.2、首先是查看数据库日志 
mysqld started 
[Warning] Can't create test file xxx.lower-test 
[Warning] Can't create test file xxx.lower-test 
/usr/libexec/mysqld: Can't change dir to '/xxx' (Errcode: 13) 
[ERROR] Aborting 
首先检查数据目录和日志目录的权限和所属用户,权限和所属用户都没问题,那应该是SELINUX的权限限制了。 
3.3、先查看当前配置信息. 
# getenforce 
Enforcing 
就表明SELinux已经启用.只需要关闭即可。 
关闭方法: 
#setenforce 0 (0|1 开|关) 
或者 
setsebool ftpd_disable_trans 1 
命令也可以.
3.4、查查数据库日志会出现
mysqld started 
2018-04-17T03:48:30.343457Z 0 [ERROR] Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!
2018-04-17T03:48:30.345407Z 0 [ERROR] Aborting
错误:Please read "Security" section of the manual to find out how to run mysqld as root!
根据提示,查了 /opt/redmine-1.2.1-1/mysql/docs/mysql.info的Security部分,发现是因为MySQL为了安全,不希望root用户直接启动mysql。
解决方案
1、root用户进行强制启动;在启动过程中,加入参数:--user=root  【service mysqld start --user=root】
2、修改  /etc/init.d/mysqld  137
$exec $MYSQLD_OPTS --datadir="$datadir" --socket="$socketfile" \
                --pid-file="$mypidfile" \
                --basedir=/usr --user=mysql $extra_opts >/dev/null &
        safe_pid=$!
将mysql 更新为  root

4、登录数据库报错ERROR 1820 (HY000): You must reset your password using ALTER USER statement befo re executing this statement.直接执行:
set password=password('密码');

5、远程登录报错 Host is not allowed to connect to this MySQL server先说说这个错误,其实就是我们的MySQL不允许远程登录,所以远程登录失败了,
解决方法如下:
1. 在装有MySQL的机器上登录MySQL mysql -u root -p密码
2. 执行use mysql;
3. 执行update user set host = '%' where user = 'root';这一句执行完可能会报错,不用管它。
4. 执行FLUSH PRIVILEGES;
经过上面4步,就可以解决这个问题了。 

注: 第四步是刷新MySQL的权限相关表,一定不要忘了,我第一次的时候没有执行第四步,结果一直不成功,最后才找到这个原因。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 资料下载
  • 历年真题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯