Linux 安装MySQL问题汇总
1.使用xshell连接云服务器,查看是否已安装MySQL,查看命令: rpm -qa | grep mysql
2.下载mysql安装包到 /usr/local/ 目录:
cd /usr/local
wget https://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.45-linux-glibc2.12-x86_64.tar.gz
解压并删除原有压缩包,解压后重命名为mysql
tar -zxvf mysql-5.6.45-linux-glibc2.12-x86_64.tar.gz
rm -rf mysql-5.6.45-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.6.45-linux-glibc2.12-x86_64/ mysql
cd mysql/
3.可以看到在 /usr/local/ 目录下,有个mysql文件夹,然后开始mysql用户组和mysql用户,添加完使用groups mysql查看是否添加成功
groupadd mysql
useradd -r -g mysql mysql
groups mysql
4.修改mysql目录拥有者为刚建立的mysql用户
4.1报错问题:./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
Installing MySQL system tables…/usr/local/mysql/bin/mysqld:
error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
#原因:缺少libaio库文件
#解决方案:yum install libaio* -y
5.MySQL 初始化:
[root@iZwz90ps06ioy9nqpovojlZ mysql]#./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
#5.1:报错问题:
FATAL ERROR:
please install the following Perl modules before executing ./scripts/mysql_install_db:Data::Dumper
#具体原因:缺少autoconf库
#解决方案:
yum -y install autoconf
5.2:[root@iZwz90ps06ioy9nqpovojlZ mysql]# chown -R root:root ./ && chown -R mysql:mysql data
6.启动mysql并修改密码:
6.1报错问题1:Starting MySQL.210521 14:21:41 mysqld_safe error: log-error set to ‘/var/log/mariadb/mariadb.log’, however file don’t exists. Create writable for user 'mysql’The server quit without updating PID file (/var/lib/mysql/i[FAILED]6ioy9nqpovojlZ.pid).
再行执行[root@iZwz90ps06ioy9nqpovojlZ mysql]# ./support-files/mysql.server start[root@iZwz90ps06ioy9nqpovojlZ mysql]# ./support-files/mysql.server start
[root@iZwz90ps06ioy9nqpovojlZ mysql]# cd /var/log/
[root@iZwz90ps06ioy9nqpovojlZ log]# mkdir mariadb
[root@iZwz90ps06ioy9nqpovojlZ log]# cd mariadb/
[root@iZwz90ps06ioy9nqpovojlZ mariadb]# touch mariadb.log
[root@iZwz90ps06ioy9nqpovojlZ mariadb]# chown -R mysql:mysql /var/log/mariadb/
[root@iZwz90ps06ioy9nqpovojlZ local]# cd /usr/local/mysql/
#再次执行
[root@iZwz90ps06ioy9nqpovojlZ mysql]# ./support-files/mysql.server start
6.2 报错问题2:Starting MySQL.210521 14:27:34 mysqld_safe Directory ‘/var/lib/mysql’ for UNIX socket file don’ t exists. The server quit without updating PID file (/var/lib/mysql/i[FAILED]6ioy9nqpovojlZ.pid).
解决方案:
目前针对刚安装完毕mysql时启动数据库出现了这个错误,如果是这样的话,可以尝试着把/etc/my.cnf文件的内容全部删了,可以试一下,应该就会重新启动了,删除之前请备份一下文件的内容。
#具体操作:
[root@iZwz90ps06ioy9nqpovojlZ mysql]# vi /etc/my.cnf
#删除my.cnf内所有内容,保存并关闭。
#注:删除内容前请自行备份!!!
再行执行
[root@iZwz90ps06ioy9nqpovojlZ mysql]# ./support-files/mysql.server start
mysql服务启动成功
6.4:修改密码:
[root@iZwz90ps06ioy9nqpovojlZ mysql]# ./bin/mysqladmin -u root password '个人设置的密码'
[root@iZwz90ps06ioy9nqpovojlZ mysql]# ./bin/mysql -h127.0.0.1 -uroot -p个人设置的密码
7.登陆后刷新权限:
mysql> grant all privileges on *.* to root@'%' identified by '个人设置的密码';
mysql> flush privileges;
8.设置开机自启动:
[root@iZwz90ps06ioy9nqpovojlZ mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@iZwz90ps06ioy9nqpovojlZ mysql]# chmod +x /etc/init.d/mysqld
[root@iZwz90ps06ioy9nqpovojlZ mysql]# chkconfig --add mysqld