Maridb的yum安裝網上教程不少,如今記錄一下離線安裝;mysql
使用的Maridb的版本爲:mariadb-10.3.8-linux-x86_64.tar.gzlinux
useradd -r -d /data/madata -m -s /sbin/nologin mysql #/data/madata是數據存放文件
1.tar xvf mariadb-10.2.8-linux-x86_64.tar.gz -C /usr/local //默認是放在/usr/local目錄下 2.cd /usr/local 3.ln -s mariadb-10.2.8-linux-x86_64.tar.gz/ mysq //在/usr/local下, mariadb的數據庫的目錄已經生成,可是這個目錄不符合要求,要求mariadb數據庫必須放在mysql目錄下,因此有兩種方法解決,一是更名,將生成的mariadb數據庫目錄改成mysql,二是建立軟連接,咱們就選擇建立軟連接的方式
vim /etc/mysql/my.cnfsql
[client] port = 3306 socket = /data/madata/mysql.sock [mysqld] user = mysql port=3306 default-storage-engine = InnoDB socket = /data/madata/mysql.sock skip-external-locking character-set-server = utf8 max_allowed_packet = 16M max_connect_errors=65535 skip_name_resolve = ON sysdate-is-now = 1 innodb = FORCE datadir = /data/madata log-bin = /var/lib/mysql/mysql-bin auto_increment_increment=2 auto_increment_offset=2 log-slave-updates=on #relay_log_recovery = 1 binlog_format=mixed #row max_binlog_size=1024M binlog_cache_size = 2M expire-logs-days = 14 server-id = 189 sync-binlog = 1 query-cache-type = 0 query-cache-size = 0 max_connections=8192 thread-cache-size = 1024 open_files_limit=8192 table-definition-cache = 1024 table-definition-cache = 1024 max_prepared_stmt_count=200000 slow_query_log=on slow_query_log_file=/var/lib/mysql/slow.log log-error = /data/madata/mysql-error.log log-queries-not-using-indexes = 1 long_query_time = 1 interactive_timeout = 28800 wait_timeout = 28800 lower_case_table_names=1 innodb-log-file-size = 512M innodb-flush-log-at-trx-commit = 2 innodb-file-per-table = 1 innodb-buffer-pool-size = 16G innodb_log_buffer_size = 8M innodb_lock_wait_timeout = 150 replicate-ignore-db = mysql replicate-ignore-db = information_schema replicate-ignore-db = performance_schema max_heap_table_size = 2048M tmp_table_size = 2048M #innodb-log-files-in-group = 2 [mysqldump] quick max_allowed_packet = 512M [mysql] no-auto-rehash [isamchk] key_buffer = 20M sort_buffer_size = 20M read_buffer = 2M write_buffer = 2M [myisamchk] key_buffer = 20M sort_buffer_size = 20M read_buffer = 2M write_buffer = 2M [mysqlhotcopy] interactive-timeout
mkdir -p /var/lib/mysql chown -R mysql /var/lib/mysql chown mysql:mysql -Rf /usr/local/mysql 設置 mysql 目錄的用戶及用戶組歸屬。 chmod +x -Rf /usr/local/mysql 賜予可執行權限 或者 在/usr/local/mysql目錄中,執行以下操做 chown -R mysql . chgrp -R mysql .
1.cd /usr/local/mysql/ 2../scripts/mysql_install_db --user=mysql --datadir=/data/madata //建立mysql的數據庫,指定數據庫的路徑以及用戶名身份,執行完以後就會在/app/mysqldb下生成了數據庫文件。 注意:建立mysql的系統數據庫,系統提供了一個腳本,咱們直接能夠利用它來生成mysql的系統數據庫,這個腳本就在scripts下,可是不要進去運行腳本,不然會報錯,必須在/usr/local/mysql/下運行腳本 3.ls /data/madata //查看一下生成的數據庫文件
1.mkdir /var/log/mariadb/ //建立日誌文件所在的目錄 2.chown mysql /var/log/mariadb/ //由於是以mysql用戶的身份來寫日誌的,因此建立了這個目錄還必須修改一下其所屬人爲mysql,以保證mysql用戶能對/var/log/mariadb/目錄有寫權限
1.cp support-files/mysql.server /etc/init.d/mysqld //在/usr/local/mysql/support-files目錄下有一個現成的服務腳本,可是這個服務腳本必須放在規定的目錄/etc/init.d/下才能使用,複製到這個目錄下,並更名爲mysqld,未來這個服務名就叫mysqld 2.chkconfig --add mysqld 3.service mysqld start //開啓服務,成功開啓服務以後,會打開了3306端口 4.ss -nutl //查看一下3306端口是否打開 5.開機啓動 chkconfig mysqld on
1.vim /etc/profile PATH=/usr/local/mysql/bin:$PATH 2.source /etc/profile 使PATH生效。
1.cd /usr/local/mysql 2.mysql_secure_installation
在忘記root密碼的時候,能夠這樣 以windows爲例: 1.進入mysql安裝目錄,打開my.ini文件 2.找到[mysqld]配置行(注意,不是[mysql]),在其下一行輸入:skip-grant-tables(或者:--skip-grant-tables,二者區別是有時兩個橫線會致使服務沒法重啓須要測試應當添加否。) 3.cmd命令:services.msc,找到mysql服務並重啓(使修改的配置文件生效) 4.mysql命令行:use mysql(進入系統配置庫) 5.mysql命令行:update user set password=password("123") where user="root";(別忘了最後加分號,分號意味着命令的結束) --新增用戶 grant all on *.* to root@'localhost' identified by '123' with grant option; 6.mysql命令行:flush privileges;(刷新緩存,更新數據庫讀取的密碼別忘了最後加分號,分號意味着命令的結束) 7.退出mysql,或重啓服務,密碼設置成功。