LANMP 搭建--MySQL、远程登陆设置

二进制包安装

1、官网下载:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

2、卸载系统自带的Mariadb(可卸,亦或者不卸载都可以,建议卸载)

[root@192 ~]# rpm -qa | grep mariadb  #查看是否安装有Mariadb
[root@192 ~]# yum remove mariadb-libs-5.5.68-1.el7.x86_64  #卸载,完成后检查是否删除干净,若还存在,可用 rm -rf

 3、编译环境所需的依赖包

yum -y install lrzsz    #安装rz -y上传命令

yum install -y ncurses-devel libaio-devel autoconf cmake gcc gcc-c++ glibc #安装依赖包

 

编译MySQL(注:某版本后,5.7版本的安装与配置如下)

1、解压

[root@192 ~]# tar zxvf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz

2、把解压后的文件移动到指定路径 

[root@192 ~]# mv mysql-5.7.32-linux-glibc2.12-x86_64 /usr/local/      #移动到指定目录
[root@192 local]# ln -s mysql-5.7.32-linux-glibc2.12-x86_64 mysql     #创建软链接,且命名为mysql

3、创建data,(重点:因某个版本后mysql目录里没有了data文件夹)

[root@192 mysql]# mkdir /usr/local/mysql/data   #创建data文件夹(如存在data,必须删除了再创建)

4、创建用户和用户组

[root@192 local]# groupadd mysql
[root@192 local]# useradd -r -g mysql mysql

5、修改mysql目录的权限(重要:不授权会出各种问题 em...

[root@192 ~]# chown -R mysql:mysql /usr/local/mysql/
[root@192 ~]# chmod -R 755 /usr/local/mysql/

 

6、查看是否有my.cnf文件,有就删除掉  rm -rf my.cnf(重要:不删除安装会报Error,会出现各种PID或者sock问题)

[root@192 ~]# find / -name my.cnf  #查询my.cnf

7、初始化(--initialize-insecure  #不生成随机密码)

(注:最后一行@localhost:9beo.8H(4Joo   生成的随机密码用来第一次登录)

[root@192 bin]# ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql  #初始化

 

 8、把启动脚本放到开机初始化目录

[root@192 mysql]# cp support-files/mysql.server /etc/init.d/mysqld

9、增加脚本执行权限

[root@192 mysql]# chmod +x /etc/init.d/mysqld  #执行权限
[root@192 mysql]# chkconfig --add mysqld    #mysqld 加入到系统服务
[root@192 mysql]# chkconfig --list mysqld   #检查 mysqld服务

10、启动mysqld服务

[root@192 ~]# ln -s /usr/local/mysql/bin/mysql /usr/bin  #创建mysql脚本软连接
[root@192 ~]# service mysqld start

 

 11、登录(mysql的启动脚本在../mysql/bin/mysql)

[root@192 ]# mysql -u root -p   
Enter password:    #输入之前生成的随机密码    

 12、登录后必须修改初始密码

mysql> set password=password('******');   #修改为新的密码

 

 13、 退出mysql后重启,新密码生效

[root@192 ~]# service mysqld restart   #重启mysqld服务,用新密码登录

 14、启用mysql安全功能 (cd../mysql/bin)

在服务器与各户机之间来回传输的所以数据进行加密。

./mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data  #加密命令

 

 

 

三、远程登录数据库

1、登录mysql,创建新用户

mysql> CREATE USER 'test01'@'%' IDENTIFIED BY 'test123';    #创建一个 test01 的用户 --> % 表示任何IP都可以登录 -->  密码为 test123

2、授权

mysql> GRANT ALL PRIVILEGES ON *.* TO 'test01'@'%' IDENTIFIED BY 'test123' WITH GRANT OPTION;

mysql> flush privileges; #重载

mysql> exit; #退出重启mysqld服务.OK!

 

注释:

GRANT  ---------------------------------  赋权命令
ALL PRIVILEGES  -------------------  当前用户的所有权限
ON  ---------------------------------------  介词
*.*  ----------------------------------------- 当前用户对所有数据库和表的相应操作权限
TO  ----------------------------------------  介词
test01’  @  ’%’  ------------------------  权限赋给test01用户,所有ip都能连接
IDENTIFIED BYtest123’  ----------  连接时输入密码,密码为test123
WITH GRANT OPTION  ------------- 允许级联赋权

 

创建组和用户——参数说明:

-c:加上备注文字,备注文字保存在passwd的备注栏中。 
-d:指定用户登入时的起始目录。
-D:变更预设值。
-e:指定账号的有效期限,缺省表示永久有效。
-f:指定在密码过期后多少天即关闭该账号。
-g:指定用户所属的起始群组。
-G:指定用户所属的附加群组。
-m:自动建立用户的登入目录。
-M:不要自动建立用户的登入目录。
-n:取消建立以用户名称为名的群组。
-r:建立系统账号。
-s:指定用户登入后所使用的shell。
-u:指定用户ID号。

 

 

posted @ 2020-12-24 04:53  Leopdy  阅读(128)  评论(0)    收藏  举报