[英]Install mysql-server 5.7 on lv mounted on /var/lib/mysql
從兩周開始,我一直在使用Ansible進行MySQL部署和工作。 我必須在LV上安裝MySQL。
在部署MySQL之前,Ansible腳本會創建/var/lib/mysql
和LV並將其安裝在/var/lib/mysql
。 然后,它創建MySQL用戶和MySQL組以在MySQL目錄上設置0700。 完成后,Ansible部署MySQL 5.7。
我的Ansible代碼的一部分:
- name: "Group : mysql"
group:
name: "mysql"
state: "present"
tags:
- User mysql
- name: "user : mysql"
user:
name: "mysql"
shell: "mysql"
group: "mysql"
createhome: "no"
append: "True"
state: "present"
tags:
- User
- name: "Set rights on mysql dir "
file:
path: "/var/lib/mysql"
owner: "mysql"
group: "mysql"
mode: 0700
tags:
- mysql dir rights
- name: "mysql root password"
debconf:
name: "mysql-server"
question: "mysql-server/root_password"
value: "{{ password_root_mysql }}"
vtype: "password"
when: password_root_mysql is defined
tags:
- Install
- name: "mysql root password confirmation"
debconf:
name: "mysql-server"
question: "mysql-server/root_password_again"
value: "{{ password_root_mysql }}"
vtype: "password"
when: password_root_mysql is defined
tags:
- Install mysql
- name: "Install : MySQL Server"
apt:
update_cache: "True"
name: "mysql-server"
install_recommends: "True"
tags:
- Install mysql
notify:
- stop mysql
- name: "Copie du template root.cnf.j2 vers root/.my.cnf "
template:
src: "{{ mysql_template_rootcnf }}"
dest: "~/.my.cnf"
owner: "root"
mode: "0600"
tags:
- Install mysql
因此,當我嘗試安裝沒有任何LV和目錄設置的mysql-server
,它可以工作。 但是,當我准備具有良好權限的目錄MySQL時,無論是手動部署還是自動部署,安裝都無法進行。
有任何想法嗎 ?
裝有MYSQL 5.7的Ubuntu 16.04。 Ansible v2.7
好的,我發現了問題,/ var / lib / mysql(在lv上安裝)的Lost + Found目錄被視為數據庫,而mysql不喜歡它。 在我的代碼中,ive添加了:
- name: "Remove lost+found from {{ mysql_dir }}"
file:
path: "{{ mysql_dir }}/lost+found"
state: absent
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.