linux 安装mysql数据库

本文详细介绍了 MySQL 5.6 在 Linux 系统上的安装与配置过程,包括从官网下载文件、使用 WinSCP 上传至服务器、解压文件、创建用户组及用户、添加配置、初始化数据库、启动服务、设置开机启动、添加远程访问权限等步骤,还给出了常见问题的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

https://dev.mysql.com/downloads/mysql/5.6.html#downloads mysql进入官网 下载

下载文件

使用WinSCP工具上传至服务器

文件上传至服务器后:

 解压文件,输入:tar -zxvf mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz

输入:mv mysql-5.6.41-linux-glibc2.12-x86_64 /home/mysql

创建mysql用户组及用户

groupadd mysql
useradd -r -g mysql mysql

进入到mysql目录,执行添加MySQL配置的操作

cp support-files/my-default.cnf /etc/my.cnf

#编辑/etc/my.cnf文件;
vi /etc/my.cnf

在my.cnf文件中添加或者修改相关配置,更改完成后保存退出

执行  yum -y install perl perl-devel
yum install -y perl-Data-Dumper

yum install libaio* -y

在mysql当前目录下设定目录的访问权限(注意后面的小点,表示当前目录)

chown -R mysql .
chgrp -R mysql .
./scripts/mysql_install_db --user=mysql
chown -R root .
chown -R mysql data

提示:-bash: ./scripts/mysql_install_db: /usr/bin/perl: bad interpreter: No such file or directory

参考:https://www.cnblogs.com/luminccs-5308/p/10101909.html 后

执行  yum -y install perl perl-devel
yum install -y perl-Data-Dumper

安装完成。

进入scripts目录,初始化mysql数据库

cd scripts
./mysql_install_db --verbose --user=root --defaults-file=/etc/my.cnf --datadir=/home/mysql/data --basedir=/home/mysql --pid-file=/home/mysql/data/mysql.pid --tmpdir=/tmp

启动mysql,进入/home/mysql/bin目录,执行下面命令

./mysqld_safe --defaults-file=/etc/my.cnf --socket=/tmp/mysql.sock --user=root &

 

设置开机启动,新开启shell中断后,进入mysql目录,执行下面命令

cp /home/mysql/support-files/mysql.server /etc/init.d/mysqld
cp /home/mysql/support-files/mysql.server /etc/rc.d/init.d/mysql
chmod 700 /etc/init.d/mysql
chkconfig --add mysqld
chkconfig --level 2345 mysqld on
chown mysql:mysql -R /home/mysql/

 

重启linux

reboot

查看mysql状态

service mysqld status

 

添加远程访问权限

ln  -s /home/mysql/bin/mysql  /usr/bin

 

更改访问权限

登录mysql,执行下面命令
/home/mysql/bin/mysql -uroot -p

密码为空直接回车,运行以下两条命令
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' with grant option;
Flush privileges;

退出mysql
exit

 

注:修改root账户密码,在/home/mysql/bin目录下,执行下面命令

mysql -uroot -p

回车后进入mysql

输入:set password=password('root');

exit;

关闭防火墙:

systemctl stop firewalld

systemctl disable firewalld

 

链接mysql正常。

 

 

注:

还是无法连接,提示:Access denied for user 'root'@'localhost' (using password:YES)

查找:Access denied for user 'root'@'localhost' (using password:YES) 解决方案

地址:https://blog.youkuaiyun.com/ldl22847/article/details/7941962

解决方案:

1、打开MySQL目录下的my.cnf文件,在文件的最后添加一行“skip-grant-tables”,保存并关闭文件。

2、重启MySQL服务。

/etc/init.d/mysql stop

/etc/init.d/mysql start

3、在命令行中输入“mysql -uroot -p”(不输入密码),回车即可进入数据库。

4、执行,“use mysql;”使用mysql数据库。

5、执行,“update user set password=PASSWORD("root") where user='root';”(修改root的密码)

(期间我还select下user表中的记录,查询全部的时候显示了一些乱码,然后我只查询了user表中的Host、User、Password字段,貌似当时显示了3条记录,有1个没有名称。当然,为了解决问题,这些我也管不了了。)

6、打开MySQL目录下的my.cnf文件,删除最后一行的“skip-grant-tables”,保存并关闭文件。

7、重启MySQL服务。

/etc/init.d/mysql stop

/etc/init.d/mysql start

8、问题搞定!

 

 

参考:

https://www.cnblogs.com/duanrantao/p/8988116.html

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值