一、通过命令行进行安装
安装
yum install mysql-community-server
启动
systemctl start mysqld
# 或者 service mysqld start
查看启动状态
systemctl status mysqld
# 或者 service mysqld status
设置开机自启
systemctl enable mysqld
systemctl daemon-reload
查看mysql默认密码
mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改:
grep 'temporary password' /var/log/mysqld.log
登录
mysql -uroot -p
修改登录密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Langkye@123';
--或者 set password for 'root'@'localhost'=password('TestBicon@123');
添加远程登录用户
默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户。
修改root用户远程访问权限
use mysql;
select host, user from user;
查看表格中 root 用户的 host,默认应该显示的 localhost,只支持本地访问,不允许远程访问。
授权 root 用户的所有权限并设置远程访问
GRANT ALL ON *.* TO 'root'@'%';
--或 update user set host='%' where user ='root';
-- GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
刷新
flush privileges;
--FLUSH PRIVILEGES;
重启mysql服务
service mysql restart
# service mariadb restart
二、通过压缩包进行安装
2.1下载
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz
2.2前戏
将压缩包移到/usr/local/
sudo mv mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz /usr/local/
解压
sudo tar -xvf mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz
重命名
sudo mv mysql-8.0.21-linux-glibc2.12-x86_64 mysql
创建用户组
sudo groupadd mysql
创建用户
将mysql用户添加的mysql用户组
-r:表示mysql是系统用户,不可用于登录系统。
sudo useradd -r -g mysql mysql
授权
sudo chown -R mysql /usr/local/mysql
sudo chgrp -R mysql /usr/local/mysql
创建数据存放目录
sudo mkdir -p /data/mysql
2.3配置my.cnf文件
编辑/etc/my.cnf
sudo 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
2.4安装
初始化
进入bin目录
cd /usr/local/mysql/bin
执行
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
如果出错:./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory,缺少libaio-dev依赖。
sudo apt-get install libaio-dev # Ubuntu
# yum install libaio-devel.x86_64 # CentOS
查看初始秘密
cat /data/mysql/mysql.err
# A temporary password is generated for root@localhost: g4r
# 用户名:root
# 初始密码:g4r
2.5启动Mysql服务
将mysql.server放置到/etc/init.d/mysql中
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
重启
启动
service mysql start
查看状态
ps -ef | grep mysql
如图这样,则安装成功了:
2.6修改密码
mysql -uroot -p初始密码
如果报错:mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory 安装libncurses5:
sudo apt install libncurses5
开启远程访问权限(授权远程连接)
grant all on *.* to 'root'@'%';
alter user user() identified by "langkye";
#ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
三、重置密码
编辑/etc/my.cnf文件
vim /etc/my.cnf
在[mysqld]里添加 skip-grant-tables
重启mysql服务,连接mysql无密码登录
使用mysql数据库:use mysql;。
修改密码
updata mysql.user set authentication_string=password('root') where user='root';
删除[mysqld]里添加 skip-grant-tables
重启mysql服务
四、卸载
卸载软件
yum remove mysql-community-server
完成后使用rpm -qa|grep mysql命令查看,如果有查询结果,则使用yum remove 名称清理掉。
再使用命令rpm -qa | grep -i mysql查看,如果有结果使用rpm -e 名称卸载。
删除文件
rm -rf /var/lib/mysql
rm /etc/my.cnf
rm -rf /usr/share/mysql-8.0
如果需要重新安装,在安装完成启动之前可以先对mysql目录赋予权限防止异常发生
chmod -R 777 /var/lib/mysql