Linux安装mariaDB以及修改Mariadb存储路径
生活随笔
收集整理的這篇文章主要介紹了
Linux安装mariaDB以及修改Mariadb存储路径
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
yum和源碼編譯安裝的區別
1.路徑區別-yum安裝的軟件是他自定義的,源碼安裝的軟件./configure --preifx=軟件安裝的絕對路徑
2.yum倉庫的軟件,版本可能比較低,而源碼編譯安裝,版本可控
3.編譯安裝的軟件,支持第三方功能擴展./configure 這里可以加上很多參數,定制功能
1.安裝mariadb,配置官方的mariadb的yum源,手動創建 mariadb.repo倉庫文件
添加MariaDB源
vi /etc/yum.repos.d/MariaDB.repo粘貼官方的或者阿里云的鏡像:
[mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.3/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1[mariadb] name = MariaDB baseurl = https://mirrors.aliyun.com/mariadb/yum/10.4/centos7-amd64/ gpgkey=https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB gpgcheck=12.如果下載速度太慢,請刪除 mariadb.repo,只是為了使用阿里云的yum源中的mariadb
rm -rf /etc/yum.repos.d/Mariadb.repo 然后清空yum 緩存 yum clean all3.通過yum安裝mariadb軟件,安裝mariadb服務端和客戶端
官方 yum install MariaDB-server MariaDB-client -y 阿里云 yum install mariadb mariadb-server -y4.安裝完成后,啟動mariadb服務端
systemctl start/stop/restart/status mariadb systemctl enable mariadb 開機啟動mariadb5. mariadb初始化
# 這條命令可以初始化mysql,刪除匿名用戶,設置root密碼等等.... mysql_secure_installation1.輸入當前密碼,初次安裝后是沒有密碼的,直接回車 2.詢問是否使用 'unix_socket' 進行身份驗證: n 3.為 root 設置密碼:y 4.輸入 root 的新密碼: root 5.確認輸入 root 的新密碼: root 6.是否移除匿名用戶,這個隨意,建議刪除: y 7.拒絕用戶遠程登錄,這個建議開啟:n 8.刪除 test 庫,可以保留:n 9.重新加載權限表:y6. 設置mysql的中文編碼支持,修改/etc/my.cnf
1.vi /etc/my.cnf 在[mysqld]中添加參數,使得mariadb服務端支持中文 [mysqld] character-set-server=utf8 collation-server=utf8_general_ci2.重啟mariadb服務,讀取my.cnf新配置 systemctl restart mariadb 3.登錄數據庫,查看字符編碼 mysql -uroot -p 輸入 \s 查看編碼7. mysql常用命
desc #查看表結構 create database #數據庫名 create table #表名 查看如何創建db的 show create database #庫名 # 查看如何創建table結構的 show create table 表名;# 修改mysql的密碼 set password = PASSWORD('redhat');# 創建mysql的普通用戶,默認權限非常低 create user zhang@'%' identified by '123456';# 查詢mysql數據庫中的用戶信息 use mysql; select host,user,password from user;7. 給用戶添加權限命令
# 對所有庫和所有表授權所有權限 grant all privileges on *.* to 賬戶@主機名 # 給zhang用戶授予所有權限 grant all privileges on *.* to zhang@'%'; # 刷新授權表 flush privileges;8. 給用戶添加權限命令
# 給zhangsan用戶授予所有權限 grant all privileges on *.* to zhangsan@'%'; # 給與root權限授予遠程登錄的命令 # 'centos這是密碼隨意設置 grant all privileges on *.* to root@'%' identified by '123456'; # 此時可以在windows登錄linux的數據庫 # 連接服務器的mysql mysql -uyining -p -h 服務器的地址9. 數據備份與恢復
# 導出當前數據庫的所有db,到一個文件中 1.mysqldump -u root -p --all-databases > /data/AllMysql.dump 2.登錄mysql 導入數據 mysql -u root -p > source /data/AllMysql.dump 3.通過命令導入數據 # 在登錄時候,導入數據文件,一樣可以寫入數據 mysql -uroot -p < /data/AllMysql.dump10. 修改Mariadb存儲路徑
10.1 首先確定MariaDB數據庫能正常運行,確定正常后關閉服務
systemctl stop mariadb10.2 建立要更改數據存放的目錄,如:我這單獨分了一個區/data存放MariaDB的數據
mkdir /data/mysql_data chown -R mysql:mysql /data/mysql_data10.3 復制默認數據存放文件夾到/data/mysql_data
cp -a /var/lib/mysql /data/mysql_data10.4 修改/etc/my.cnf.d/server.cnf
vim /etc/my.cnf.d/server.cnf在[mysqld]標簽下添加如下內容
datadir=/data/mysql_data/mysql socket=/var/lib/mysql/mysql.sock #default-character-set=utf8 character_set_server=utf8 slow_query_log=on slow_query_log_file=/data/mysql_data/slow_query_log.log long_query_time=210.5 配置MariaDB慢查詢
touch /data/mysql_data/slow_query_log.log chown mysql:mysql /data/mysql_data/slow_query_log.log10.6 重啟數據庫
systemctl start mariadb10.7 注意:
1、配置文件my.cnf存在,但是修改的并不是my.cnf,而是/etc/my.cnf.d/server.cnf;
2、并沒有更改mysql.sock的路徑配置;
3、沒有修改/etc/init.d/mysql中的內容;
4、沒有修改mysql_safe中的內容;
5、增加了數據庫的慢查詢配置。
11. Mariadb主從復制
11.1 主從庫初始化
# 這條命令可以初始化mysql,刪除匿名用戶,設置root密碼等等.... mysql_secure_installation1.輸入當前密碼,初次安裝后是沒有密碼的,直接回車 2.詢問是否使用 'unix_socket' 進行身份驗證: n 3.為 root 設置密碼:y 4.輸入 root 的新密碼: root 5.確認輸入 root 的新密碼: root 6.是否移除匿名用戶,這個隨意,建議刪除: y 7.拒絕用戶遠程登錄,這個建議開啟:n 8.刪除 test 庫,可以保留:n 9.重新加載權限表:y11.2 修改主庫配置
[root@mster mysql]# grep -Ev "^$|^#" /etc/my.cnf.d/server.cnf [server] [mysqld] character-set-server=utf8 collation-server=utf8_general_ci server_id = 13 # 一組主從組里的每個id必須是唯一值。推薦用ip位數 log-bin= mysql-bin # 二進制日志,后面指定存放位置。如果只是指定名字,默認存放在/var/lib/mysql下 lower_case_table_names=1 # 不區分大小寫 binlog-format=ROW # 二進制日志文件格式 log-slave-updates=True # slave更新是否記入日志 sync-master-info=1 # 值為1確保信息不會丟失 slave-parallel-threads=3 #同時啟動多少個復制線程,最多與要復制的數據庫數量相等即可 binlog-checksum=CRC32 # 效驗碼 master-verify-checksum=1 # 啟動主服務器效驗 slave-sql-verify-checksum=1 # 啟動從服務器效驗 [galera] [embedded] [mariadb] [mariadb-10.6] [root@mster-k8s mysql]#11.2 修改從庫配置
[mysqld] character-set-server=utf8 collation-server=utf8_general_ci server_id=14 #log-bin= mysql-bin #log-bin是二進制文件 relay_log = relay-bin # 中繼日志, 后面指定存放位置。如果只是指定名字,默認存放在/var/lib/mysql下 lower_case_table_names=111.3 重啟主庫和從庫服務
systemctl restart mariad11.4 master節點配置
MariaDB [huawei]> grant replication slave, replication client on *.* to 'liu'@'%' identified by '123456'; Query OK, 0 rows affected (0.001 sec)MariaDB [huawei]> show master status; +------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000001 | 4990 | | | +------------------+----------+--------------+------------------+ 1 row in set (0.000 sec)MariaDB [huawei]> select binlog_gtid_pos('mysql-bin.000001', 4990 ); +-------------------------------------------+ | binlog_gtid_pos('mysql-bin.000001', 4990) | +-------------------------------------------+ | 0-13-80 | +-------------------------------------------+ 1 row in set (0.000 sec)MariaDB [huawei]> flush privileges;11.5 slave節點配置
MariaDB [(none)]> set global gtid_slave_pos='0-13-80'; Query OK, 0 rows affected (0.004 sec)MariaDB [(none)]> change master to master_host='101.34.141.216',master_user='liu',master_password='123456',master_use_gtid=slave_pos; Query OK, 0 rows affected (0.008 sec)MariaDB [(none)]> start slave; Query OK, 0 rows affected (0.005 sec)MariaDB [(none)]>11.6 驗證salve狀態
MariaDB [(none)]> show slave status\G *************************** 1. row ***************************Slave_IO_State: Waiting for master to send eventMaster_Host: 101.34.141.216Master_User: liuMaster_Port: 3306Connect_Retry: 60Master_Log_File: mysql-bin.000001Read_Master_Log_Pos: 13260Relay_Log_File: relay-bin.000002Relay_Log_Pos: 10246Relay_Master_Log_File: mysql-bin.000001Slave_IO_Running: YesSlave_SQL_Running: YesReplicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0Last_Error: Skip_Counter: 0Exec_Master_Log_Pos: 13260Relay_Log_Space: 10549Until_Condition: NoneUntil_Log_File: Until_Log_Pos: 0Master_SSL_Allowed: NoMaster_SSL_CA_File:總結
以上是生活随笔為你收集整理的Linux安装mariaDB以及修改Mariadb存储路径的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 莽莽昆仑开鸿蒙,中国科技人,那些“芳心纵
- 下一篇: 偷菜与云计算