简单记录下在centOS上安装MySQL(MariaDB)的过程。
这里我并没有选择特定的MySQL版本,使用的是源默认提供的版本。
1. 执行安装命令:
执行如下指令安装MySQL数据库。
1 |
yum install -y mysql mysql-server |
注意这里同时安装了mysql和mysql-server。
在输出一长串信息后,期间可能会需要输入y
表示确认,MySQL就安装好了。
安装结束后还需要手动启动MySQL。
2. 启动MySQL
执行如下指令启动MySQL。
1 |
systemctl start mysqld.service |
启动MySQL后会输出日志到/var/log/mysql/mysql.log
。
在日志中可以看到下面这一句:
1 |
root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option. |
日志提示mysql root用户的初始密码是空的。据说有的时候会生成一个随机密码写入到日志中,但这次安装明显不是这样的。
另外在日志中也可以看到mysql的版本是8.0.17:
1 |
/usr/libexec/mysqld: ready for connections. Version: '8.0.17' |
然后,执行如下指令,设置MySQL数据库开机启动
1 |
systemctl enable mysqld.service |
3. 设置root用户密码
执行如下命令设置root用户密码:
1 |
mysqladmin -u root password |
执行命令后会提示输入密码并确认。
4. 修改数据库时区
执行如下命令后输入密码进入MySQL数据库:
1 |
mysql -uroot -p |
切换到目标数据库:
1 |
use myDB; |
查看数据库时间:
1 2 3 4 5 6 7 |
mysql> select current_timestamp; +---------------------+ | current_timestamp | +---------------------+ | 2020-03-15 04:07:57 | +---------------------+ 1 row in set (0.00 sec) |
查看时区设置:
1 2 3 4 5 6 7 8 |
mysql> show variables like '%time_zone%'; +------------------+--------+ | Variable_name | Value | +------------------+--------+ | system_time_zone | EDT | | time_zone | SYSTEM | +------------------+--------+ 2 rows in set (0.00 sec) |
- system_time_zone 表示系统使用的时区是EDT即北美的东部夏令时(-4h)。
- time_zone 表示 MySQL 采用的是系统的时区。
之前以为如果在安装MySQL就通过tzselect并在profile中修改了时区设置会起到作用,后来测试发现是无效的。 ╮(╯▽╰)╭
临时修改时区执行如下指令:
1 2 3 4 5 6 |
-- 仅修改当前会话的时区,停止会话失效 set time_zone = '+8:00'; -- 修改全局的时区配置 set global time_zone = '+8:00'; flush privileges; |
永久修改时区需要修改mysql配置文件。执行如下指令打开MySQL配置文件:
1 |
vim /etc/my.cnf.d/mysql-server.cnf |
在条目[mysqld]下添加时区配置信息:
1 |
default-time_zone='+8:00' |
当然直接编辑/etc/my.cnf
也不是不行,不过讲究点儿还是好的。
重启MySQL服务:
1 |
service mysqld restart |
再看时间会看到时区修改成功。
5. 创建用户并授权
为MySQL数据库添加一个新用户zhyea,并将密码设置为zhyPass,指令如下:
1 |
create user 'zhyea'@'127.0.0.1' identified by 'zhyPass'; |
授予用户zhyea对数据库chobit的所有权限:
1 |
grant all on chobit.* to 'zhyea'@'127.0.0.1'; |
6. 数据备份
如需要执行数据迁移,先回到原数据库服务器上,进入MySQL命令行,执行如下命令完成数据备份:
1 |
mysqldump -uzhyea -pzhyPass chobit > /root/zhyea/zhy.sql |
用户为zhyea;密码为zhyPass;目标数据库 chobit。备份文件存储到了/root/zhyea/zhy.sql
这个位置。
下载备份文件zhy.sql。
7. 数据迁移
将备份的sql文件 zhy.sql 挪到现服务器上。可以考虑使用rz
指令上传数据文件,如未安装该工具可以用如下指令安装:
1 |
yum install -y lrzsz |
进入MySQL命令行,切换到目标数据库,执行如下命令完成数据迁移:
1 |
source /path-to-zhy/zhy.sql |
8. 删除已安装的版本
执行如下指令:
1 |
yum remove mysql* |
一切搞定。
End!
发表评论