1.安装mysql
# 根据Linux服务器是64位还是32位去官网下载对应mysql 上传到linux服务器
# 解压
$ tar -zxvf mysql-8.0.4-rc-linux-glibc2.12-x86_64.tar.gz
# 复制解压后的mysql目录到系统的本地软件目录:
$ cp mysql-8.0.4-rc-linux-glibc2.12-x86_64 /usr/local/mysql -r
添加默认配置文件
$ vim /etc/my.cnf
[client]
port=3306
socket=/tmp/mysql.sock
[mysqld]
port=3306
user=mysql
socket=/tmp/mysql.sock
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
# 创建mysql组
$ groupadd mysql
# 创建mysql用户
$ useradd -g mysql mysql
# 创建mysql数据目录,此处的目录为初始化mysql时datadir的目录需要手动创建
$ mkdir $MYSQL_HOME/data
或者 $ mkdir /usr/local/mysql/data/
# 初始化mysql 说明:--basedir是解压目录 --datadir是初始化目录需要创建
$ /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
# 初始化报错
bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
# 解决方法
yum install -y libaio
# 初始化报错
2018-07-08T02:53:24.542370Z 0 [System] [MY-010116] /usr/local/mysql/bin/mysqld (mysqld 8.0.4-rc) starting as process 17745 ...
mysqld: Can't create/write to file '/tmp/mysql/data/ibd35qXQ' (Errcode: 13 - Permission denied)
2018-07-08T02:53:24.554816Z 1 [ERROR] [MY-011066] InnoDB: Unable to create temporary file; errno: 13
2018-07-08T02:53:24.554856Z 1 [ERROR] [MY-011066] InnoDB: InnoDB Database creation was aborted with error Generic error. You may need to delete the ibdata1 file before trying to start up again.
2018-07-08T02:53:24.555000Z 0 [ERROR] [MY-010020] Data Dictionary initialization failed.
2018-07-08T02:53:24.555033Z 0 [ERROR] [MY-010119] Aborting
2018-07-08T02:53:24.555919Z 0 [System] [MY-010910] /usr/local/mysql/bin/mysqld: Shutdown complete.
# 解决办法:修改/tmp/mysql的目录权限
$ chown -R mysql:mysql /tmp/mysql
# 初始化成功
> 如果无异常情况日志如下可以看到mysql默认会生成root账号和密码[email protected]: /TI(mjVAs1Ta
[[email protected] mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
2019-01-29T10:19:34.023997Z 0 [System] [MY-013169] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.13) initializing of server in progress as process 4240
2019-01-29T10:19:39.764895Z 5 [Note] [MY-010454] [Server] A temporary password is generated for [email protected]: /TI(mjVAs1Ta
2019-01-29T10:19:43.041419Z 0 [System] [MY-013170] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.13) initializing of server has completed
# 拷贝mysql启动文件到系统初始化目录
$ cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# 启动mysql服务器
$ service mysqld start
2.mysql更改密码设置外网可以访问
# 使用mysql客户端连接mysql
$ /usr/local/mysql/bin/mysql -u root -p
修改mysql的默认初始化密码,在使用linux本机操作mysql后面标点必须带
> alter user 'root'@'localhost' identified by 'root';
# 创建用户 CREATE USER '用户名称'@'主机名称' INDENTIFIED BY '用户密码'
> create user 'jack'@'localhost' identified by 'jack';
# 授予权限 grant 权限 on 数据库.表 to '用户名'@'登录主机' [INDENTIFIED BY '用户密码'];
> grant replication slave on *.* to 'jack'@'localhost';
# 刷新
> flush privileges;
# 修改root用户可以远程连接
> update mysql.user set host='%' where user='root';
> alter user 'root'@'%' identified with mysql_native_password by 'root';
# 查看mysql所用用户
> select user,host from mysql.user;
# 刷新
> flush privileges;
#退出登录
> exit;
# docker 修改mysql的最大连接数
apt-get update
apt-get install vim
vim /etc/mysql/mysql.conf.d/mysqld.cnf
max_connections=1000