ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
以二进制包安装MySQL,需要用root用户进行操作。 1. 将下载好的包上传到Linux服务器 2. 新建mysql用户和用户组 ```bash groupadd mysql useradd -g mysql mysql ``` 3. 新建MySQL的目录和数据目录 ```bash mkdir -p /usr/local/mysql mkdir -p /data/mysql chown -R mysql.mysql /data/mysql ``` 4. 将二进制包解压缩,将解压后的目录内的内容全部复制到/usr/local/mysql中 5. 修改/etc/profile文件,将MySQL的可执行bin目录写入到PATH中 ```bash export MYSQL_HOME=/usr/local/mysql export PATH=$PATH:$MYSQL_HOME/bin ``` 6. 修改MySQL的配置文件,一般修改/etc/my.cnf即可 初次安装,我们只修改这几个值,未来根据内容的深入,再去修改这个文件。 ```bash [client] socket=/data/mysql/mysql.sock [mysqld] basedir=/usr/local/mysql datadir=/data/mysql socket=/data/mysql/mysql.sock ``` 现在这个文件已经可以满足初始化和启动的要求了。 修改配置文件是一件比较要求高的事情,这里给出一个参考链接,可以在这里生成一个: [MySQL配置文件生成器](http://imysql.com/my-cnf-wizard.html) 7. 初始化数据库 ```bash mysqld --initialize --user=mysql --datadir=/data/mysql ``` 执行这个命令之后,MySQL会在控制台打印一些信息: ```bash 2018-07-05T06:34:35.133123Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2018-07-05T06:34:36.254217Z 0 [Warning] InnoDB: New log files created, LSN=45790 2018-07-05T06:34:36.402600Z 0 [Warning] InnoDB: Creating foreign key constraint system tables. 2018-07-05T06:34:36.467754Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 7c6c451e-801d-11e8-8abe-000c2965c37b. 2018-07-05T06:34:36.469142Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened. 2018-07-05T06:34:36.470493Z 1 [Note] A temporary password is generated for root@localhost: xAHl)vCgb4Kz ``` 要注意这里打印的随机密码。 此时检查数据目录,已经能发现很多文件了: ![](https://box.kancloud.cn/52d4cb3fb11f56542cf11b5aae1f576e_552x280.png) 8. 启动服务 ```bash mysqld --user=mysql --datadir=/data/mysql ``` 控制台会打印很多信息出来,如果没有Error,且有如下这条提示,可以认为MySQL已经启动成功了: ```bash Version: '5.7.22' socket: '/data/mysql/mysql.sock' port: 3306 MySQL Community Server (GPL) ``` 9. 修改随机密码 之前步骤中,MySQL初始化结束之后在控制台上打印出了随机临时密码,这个密码除了在本地登录MySQL修改密码之外没有任何权限。 登录MySQL,执行下面的命令修改密码: ```bash set password = PASSWORD('youcai888'); ``` 不过这个命令会在未来的版本中被替换掉,查看warning信息就会发现: ```bash +---------+------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Level | Code | Message | +---------+------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Warning | 1287 | 'SET PASSWORD = PASSWORD('<plaintext_password>')' is deprecated and will be removed in a future release. Please use SET PASSWORD = '<plaintext_password>' instead | +---------+------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+ ``` 至此我们就安装配置完成了,现在就可以开始进一步的学习MySQL了。