linux快速安装mysql

一、官网下载mysql安装包,上传服务器解压

tar -xvf mysql-8.0.16-linux-glibc2.12x86_64.tar.xz

二、移动mysql目录到路径

mkdir /usr/local/mysql

mkdir /usr/local/mysql/data

mv mysql-8.0.16-linux-glibc2.12x86_64/* /usr/local/mysql

三、添加系统mysql组和mysql用户

groupadd mysql

useradd -r -g mysql mysql

四、初始化mysql配置表

进入mysql目录下,修改当前目录为mysql用户及属组。

cd /usr/local/mysql

chown -R mysql:mysql ./*

bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

初始化后会生成一个临时密码,需记住。

注:

  ①如/usr/local/mysql下没有生成tmp目录,手工创建,并配置权限。

    mkdir tmp

    chmod 777 ./tmp

  ②若报错:bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory

    则yum安装numactl,命令为:yum -y install numactl

    再次执行"bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data"

五、修改配置文件my.cnf

vim /etc/my.cnf

[mysqld]

basedir = /usr/local/mysql

datadir = /usr/local/mysql/data

port = 3306

socket = /usr/local/mysql/tmp/mysql.sock

#指定用户密码加密方式

default_authentication_plugin=mysql_native_password

#必填项

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[client]

socket = /usr/local/mysql/tmp/mysql.sock

六、加入开机自启

将{mysql}/support-files/mysql.server 拷贝为/etc/init.d/mysql并设置运行权限,就可以使用service mysql命令启停服务。

cp support-files/mysql.server /etc/init.d/mysql

chmod +x /etc/init.d/mysql

注册启动服务:

chkconfig --add mysql

查看是否添加成功

chkconfig --list mysql

显示:mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off

七、启动mysql数据库

启动:systemctl start mysql

停止:systemctl stop mysql

重启:systemctl restart mysql

八、配置环境变量

配置环境变量

vim /etc/profile

文件中写入:export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib

保存退出之后,让文件生效source /etc/profile

九、登录并修改密码

mysql -uroot -p *  #*随机生成的密码 

注:mysql 8.0 默认使用 caching_sha2_password 身份验证机制 —— 从原来的 mysql_native_password 更改为 caching_sha2_password。

从 5.7 升级 8.0 版本的不会改变现有用户的身份验证方法,但新用户会默认使用新的 caching_sha2_password,恰恰客户端不支持新的加密方式。

所以,使用

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';

修改密码,而不是

alter user 'root'@'localhost' identified by 'root'; //修改root密码

十、设置可远程登录

执行use mysql;

执行update user set host = '%' where user = 'root';

执行FLUSH PRIVILEGES;

十一、简单的mysql操作命令

登录:mysql -u root -p

查看现有用户:select host,user,authentication_string from mysql.user;

新建用户:create user "username"@"host" identified by "password";

  host="localhost"为本地登录用户,host="ip"为ip地址登录,host="%",为外网ip登录。

删除用户:drop user 'username'@'host';

授权:grant privileges on databasename.tablename to 'username'@'host' IDENTIFIED BY 'PASSWORD';

指定用户对指定库权限:grant all on 数据库名.* to 用户名;

执行sql脚本:source /路径/数据库脚本;

posted @ 2020-08-28 11:13  破而后立666  阅读(255)  评论(0)    收藏  举报