ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

linux install mysql & errors solutions

2021-08-28 20:35:29  阅读:229  来源: 互联网

标签:bin errors root user usr mysql local solutions


resources from: https://blog.csdn.net/qq_37598011/article/details/93489404

 

 

下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

 

1.解压

 tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar

2.移动并重命名

mv mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/mysql


3.创建mysql用户组和用户并修改权限

groupadd mysql
useradd -r -g mysql mysql

4.创建数据目录并赋予权限

mkdir -p  /data/mysql              #创建目录
chown mysql:mysql -R /data/mysql   #赋予权限

5.配置my.cnf

vim /etc/my.cnf

--------
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
-------------



6.进入mysql的bin目录

cd /usr/local/mysql/bin/

7.初始化

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

8.查看密码

cat /data/mysql/mysql.err

9.先将mysql.server放置到/etc/init.d/mysql中

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

10.启动

    service mysql start
     
    ps -ef|grep mysql

到这里说明mysql已经安装成功了!!

下面修改密码

1.首先登录mysql,前面的那个是随机生成的。

./mysql -u root -p   #bin目录下
再执行下面三步操作,然后重新登录。

    SET PASSWORD = PASSWORD('123456');
    ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
    FLUSH PRIVILEGES;                                 

2.如果不希望每次都到bin目录下使用mysql命令则执行以下命令

ln -s  /usr/local/mysql/bin/mysql    /usr/bin




-------------------------------------------------------------------------
ERRORS & SOLUTIONS:
1.执行 mysql -u root -p 时报错:
mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

原因:mysql在启动时发现缺少 libncurses.so.5 这个依赖,并且在/usr/lib以及/lib中也无法找到该依赖

解决:(1)在/usr/lib、/lib、/usr/lib64中寻找一个大于或者等于该依赖版本的依赖文件,我的是在/usr/lin64中找到了一个libncurses.so.6.1,然后建立一个软链接(相当于快捷方式):
sudo ln -s 文件路径  快捷方式路径

  sudo ln -s /usr/lib64/libncurses.so.6.1 /usr/lib64/libncurses.so.5

(2)查看MYSQL的依赖

$ cd /usr/local/mysql/bin

$ ldd mysql

mysql -uroot -pmagedu

ln -sf libtinfo.so.6.1 libtinfo.so.5

2.重置密码遇到ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passwor:yes)问题
重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:

#vim /etc/my.cnf(注:windows下修改的是my.ini)

在文档内搜索mysqld定位到[mysqld]文本段:
/mysqld(在vim编辑状态下直接输入该命令可搜索文本内容)

在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程

 

3.登录时提示密码错误

旧版本的更改密码输入格式:
update mysql.user set password=password('12345678') where user='root'时提示:ERROR 1054 (42S22): Unknown column 'password' in 'field list'

原来是新版本的mysql数据库下已经没有password这个字段了,password字段正式改成了authentication_string字段

所以新版本mysql57需要更改语句替换为:

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

4.
 

标签:bin,errors,root,user,usr,mysql,local,solutions
来源: https://www.cnblogs.com/MONziie/p/15200993.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有