一、卸载二进制安装的mysql
-
查看mysql运行状态:
systemctl status mysql
-
关闭mysql:
systemctl stop mysql
-
查找mysql相关的包:
find / -name mysql
-
删除:
rm -rf 查到的文件夹
-
删除mysql配置文件:
rm -rf /etc/my.cnf
-
删除相关文件:
rm -rf /etc/init.d/mysqld
-
删除mysql用户:
id mysql
-->userdel mysql
卸载完成!!!
二、卸载yum安装的mysql
- 查看安装:
rpm -qa | grep mysql
- 卸载:
rpm -e 文件名
三、yum安装mysql
-
创建文件夹:
mkdir /mnt/mysql
-->cd /mnt/mysql
-
下载mysql包:
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
-
安装mysql包:
yum -y install mysql57-community-release-el7-10.noarch.rpm
-
安装mysql:
yum -y install mysql-community-server --nogpgcheck
-
启动mysql:
systemctl start mysqld
ps:如果启动失败报错,用户没创建,则执行以下操作
1)groupadd mysql
2)useradd mysql -g mysql -M -s /sbin/nologin
3)chown mysql.mysql /var/run/mysqld/ -
查看启动情况:
systemctl status mysqld
-
修改配置,无密码进入mysql:
vi /etc/my.cnf
,最后一行添加skip-grant-tables
,保存 -
重启mysql:
systemctl restart mysqld
-
进入mysql:
mysql -u root -p
,输密码时直接enter键即可(或者直接输mysql进入) -
查看数据库:
show databases;
-
刷新:
flush privileges;
-
修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
-
进入mysql库:
use mysql;
-
查看访问权限:
select user,host from user;
可以看到root只能本地访问,不能ip访问。
-
所以设置ip访问:
update user set host = '%' where user = 'root';
-
刷新:
flush privileges;
-
配置密码访问和数据库不区分字母大小写:
vi /etc/my.cnf
,去掉skip-grant-tables
,最后一行加上lower_case_table_names=1
,保存 -
重启mysql:
systemctl restart mysqld
-
进入mysql:
mysql -u root -p
,输密码进入 -
关闭防火墙:
systemctl stop firewalld
-
查看端口是否可以ip访问:
telnet 192.168.248.100 3306
ps:如果没有telnet指令,下载:yum install telnet-server telnet.* -y
访问成功,说明安装成功!!!
四、二进制安装mysql
下载地址:https://downloads.mysql.com/archives/community/
-
上传到服务器并解压:tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
-
再移动并重命名一下:mv mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/mysql
-
创建mysql用户组和用户并修改权限
groupadd mysql useradd -r -g mysql mysql
-
创建数据目录并赋予权限
mkdir -p /data/mysql #创建目录 chown mysql:mysql -R /data/mysql #赋予权限
-
修改配置文件:vi /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 max_connections = 5000 lower_case_table_names=1 [mysqld_safe] 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 lower_case_table_names=1
-
创建文件夹:mkdir -p /data/mysql/
-
初始化数据库
cd /usr/local/mysql/bin/ ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
日志会最后会生成root密码,需要记住后面用
-
将mysql.server放置到/etc/init.d/mysql中:cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
-
启动:service mysql start
-
创建软连接:ln -s /usr/local/mysql/bin/mysql /usr/bin
-
登录mysql:mysql -u root -p,密码为前面查看的密码
-
修改root密码
SET PASSWORD = PASSWORD('Ffcsict13#&'); ps:mysql8版本修改命令:ALTER USER 'root'@'localhost' IDENTIFIED BY 'ffcsict123'; ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; FLUSH PRIVILEGES;
-
设置远程访问权限
use mysql update user set host = '%' where user = 'root'; FLUSH PRIVILEGES;
-
设置开机启动
1)将服务文件拷贝到init.d下,并重命名为mysql:cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2)赋予可执行权限:chmod +x /etc/init.d/mysqld
3)添加服务:chkconfig --add mysqld
4)显示服务列表:chkconfig --list
五、导入数据库
- 进入数据库:
mysql -u root -p
- 创建数据库::
create database 库名;
- 查看库:
show databases;
- 使用数据库:
use 库名;
- 设置编码:
set names utf8;
- 导入sql脚本:
source /home/abc/abc.sql;