本地hadoop环境安装好,并安装好mysql
mysql下载地址及选择包
MySQL :: Download MyS的QL Community Server (Archived Versions)
mysql安装步骤
下载与上传解压给权限
#mysql安装包上传到/opt下
cd /usr/local/
#解压到此目录
tar -xvf /opt/mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz
重命名一下
mv mysql-8.0.33-linux-glibc2.12-x86_64 mysql
添加mysql用户组及用户
#创建数据目录
mkdir /usr/local/mysql/data
#创建mysql用户组和用户
groupadd mysql
useradd -g mysql mysql
#更改权限
chown -R mysql.mysql /usr/local/mysql
配置mysql环境 my.cnf
注意:加入下面的环境配置,vi /etc/my.cnf ,粘贴下面一段即可,保存并退出
[mysql]
#设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M
socket=/usr/local/mysql/mysql.sock
symbolic-links=0
[client]
port=3306
socket=/usr/local/mysql/mysql.sock
!includedir /etc/my.cnf.d
mysql初始化之执行命令
在mysql的bin目录下执行下面命令
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql --initialize
我的初始密码是:先保存下来这个密码
gklp0BSltV(B
添加系统服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
chkconfig --add mysql
启动mysql
service mysql start
启动报错解决
问题描述:
[root@master bin]# service mysql start
Starting MySQL.Logging to '/usr/local/mysql/data/master.err'.
............. ERROR! The server quit without updating PID file (/usr/local/mysql/data/master.pid).
排查与解决方法:
tailf /usr/local/mysql/data/master.err
问题排查 查看错误日志 ---> [ERROR] [MY-010273] [Server] Could not create unix socket lock file /usr/local/mysql/mysql.sock.lock.
2023-10-12T04:58:39.779407Z 0 [ERROR] [MY-010268] [Server] Unable to setup unix socket lock file.
2023-10-12T04:58:39.779936Z 0 [ERROR] [MY-010119] [Server] Aborting
2023-10-12T04:58:41.395147Z 0 [System] [MY-010910] [Server] /usr/local/mysql/bin/mysqld: Shutdown complete (mysqld 8.0.33) MySQL Community Server - GPL.
bug显示:
- 无法创建Unix套接字锁文件:可能是由于权限不足或该文件已被其他进程占用导致的。可以检查权限设置和确保没有其他MySQL进程正在运行。
- 无法设置Unix套接字锁文件:可能是由于同样的原因导致的,即权限不足或文件被占用。
解决办法:
权限问题:1、使用ls -l
命令检查/usr/local/mysql
目录及其所有者和组的权限。如果需要,可以使用chown
和chmod
命令更改文件和目录的所有者和权限。
我急眼了,把mysql路径的权限全给了
chmod -R 777 mysql
清理残留文件:1、有时,在MySQL服务器异常关闭或意外终止后,可能会留下一些残留文件。运行以下命令以清理这些文件:
rm -rf /usr/local/mysql/data/*.err
rm -rf /usr/local/mysql/data/*.pid
重新启动服务器:执行完上面操作,可以尝试重新启动MySQL服务器。运行以下命令:
/usr/local/mysql/bin/mysqld_safe --user=mysql &
#随后不放心,我有重启了一下
service mysql restart
然后就解决此问题,重启如下图:
bug解决参考文章:修改配置,MySQL启动报:[ERROR] The server quit without updating PID file_the server quit without updating pid file (/usr/lo-CSDN博客
进入mysql并修改密码
#进入/usr/local/mysql/bin,执行下面命令
./mysql -u root -p#进入后修改密码,将'root'用户在本地主机上的密码修改为'root'
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
#刷新权限
flush privileges;
远程访问
使用刚才设置的密码进行登录,登录成功后输入下面的命令
./mysql -u root -p
# pw是root
use mysql;
select user,host,plugin,authentication_string from user;
#mysql8认证方式改了,mysql_native_password这个才能远程连接mysql
alter user 'root'@'%' identified with mysql_native_password by 'root';
flush privileges;