ubuntu服务器安装mysql、mysql数据迁移

写在前面

mysql在开发过程中使用率比较高的数据库,linux下安装也挺简单,主要是一些配置容易忽略,文件权限比较复杂,下面例子使用超级用户(root)安装mysql5.6。默认mysql安装的权限是mysql用户组的mysql用户,不需要手动去创建,非大神不建议去修改,稍微权限不对,mysql就启动不了。

安装过程

  • 更新ubuntu数据源
$ apt-get update
  • 安装mysql server
$ apt-get install mysql-server-5.6
  • 服务开启与停止
$ service mysql start  # 开启mysql

$ service mysql stop  # 停止mysql

$ service mysql restart  # 重启mysql

修改配置文件

$ vim /etc/mysql/my.cnf
  • 倘若不限定本机访问,则注释下面代码
bind-address            = 127.0.0.1
  • [mysqld]下面添加设置,若key存在则修改
[mysqld]
default-time_zone = '+8:00' #北京时间
character-set-server = utf8mb4      # 字符集 utf8mb4支持表情 普通选择utf8
lower_case_table_names=1          # 忽略表名大小写 选择性
slow_query_log = on                      # 开启慢查询
slow-query-log-file = /var/log/mysql/mysql-slow.log  # 5.6后使用slow-query-log-file
long_query_time = 2                      # 大于2s记录
log_bin                 = /var/log/mysql/mysql-bin.log  # 开启bin log
max_connections = 1000              # 设置最大连接数
  • 修改完配置重启mysql

若必要授权非本机用户登陆数据库

# 控制台登录数据库执行以下sql,需替换相应参数
GRANT ALL PRIVILEGES ON *.* TO '登录用户名'@'%代表所有ip' IDENTIFIED BY '登录用户密码' WITH GRANT OPTION;

数据迁移

倘若数据目录从/var/lib/mysql迁移到/mysql/data下面

  • 停止mysql服务,创建目录
$ mkdir -p /mysql/data
$ chown mysql:mysql /mysql/data/                      # 修改用户组
  • 拷贝数据,注意一并拷贝文件权限,使用-a参数
$ cp -a /var/lib/mysql/* /mysql/data
  • 修改配置文件/etc/mysql/my.cnf
datadir = /mysql/data
  • 修改/etc/apparmor.d/usr.sbin.mysqld权限文件,在/var/lib/mysql/行下面添加,注意末尾逗号
/mysql/data/ r,
/mysql/data/** rwk,
  • 重启mysql服务

你可能感兴趣的:(ubuntu服务器安装mysql、mysql数据迁移)