MYSQL安装部署
参考:https://blog.csdn.net/qq_39027229/article/details/109290107
安装MySQL
1.在安装前需要确保没有安装过mysql,如果安装过请彻底删除对应的文件,具体方法可以自行百度
2.检查mysql用户组和用户是否存在
cat /etc/group | grep mysql
cat /etc/passwd |grep mysql
3.如果用户组和用户不存在,则需要先创建,如果存在跳过该步骤
groupadd mysql
useradd -r -g mysql mysql
解压
tar xvf mysql-8.0.22-linux-glibc2.17-x86_64-minimal.tar
6.解压后有三个压缩包,我们使用mysql-8.0.22-linux-glibc2.17-x86_64-minimal.tar.xz,对其进行解压
tar xzvf mysql-8.0.22-linux-glibc2.17-x86_64-minimal.tar.xz
7.解压完成后,可以看到当前目录下多了一个解压文件,移动该文件到/usr/local/下,并将文件夹名称修改为mysql。
mv mysql-8.0.22-linux-glibc2.17-x86_64-minimal /usr/local/mysql
8.在uer/local/mysql下面创建data目录
mkdir /data/mysql/data
9.更改mysql目录下所有的目录及文件夹所属的用户组和用户,以及权限
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql
初始化
进入bin目录
cd /usr/local/mysql/bin
在my.cnf输入以下内容:
vi /etc/my.cnf
执行以下命令初始化数据库。
[root@localhost bin]# cd /usr/local/mysql/bin
[root@localhost bin]# ./mysqld --user=mysql --lower_case_table_names=1 --initialize-insecure --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
启动MySQL服务
添加mysql服务到系统,并完成授权
(1) cd /usr/local/mysql
(2) cp -a ./support-files/mysql.server /etc/init.d/mysql
(3) chmod +x /etc/init.d/mysql
(4) chkconfig --add mysql
mysql启动: service mysql start
mysql状态查看: service mysql status
登录MySQL
如果忘记MySQL密码,先停止MySQL服务,
在my.cnf 添加 skip-grant-tables
,重新启动MySQL服务。
使用命令 mysql -u root -p
登录
如果报错,提示 -bash: mysql: command not found,
这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件,执行以下命令:
ln -s /usr/local/mysql/bin/mysql /usr/bin
重新执行登录命令,提示输入密码,直接回车。
依次执行SQL:
>use mysql;
>update user set authentication_string='' where user='root';
然后退出,重新编辑my.cnf,去掉 skip-grant-tables
重新登录,执行SQL,设置密码为 123456:
>ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
后续再次登录,就需要输入密码 123456
允许其他服务器访问数据库服务
—数据库访问
依次执行SQL:
>UPDATE mysql.user SET Host='%' WHERE Host='localhost';
>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
>FLUSH PRIVILEGES;