MySQL編譯安裝以及系統管理使用者

來源:互聯網
上載者:User

MySQL編譯安裝以及系統管理使用者

MySQL使用者密碼修改:
1、mysqladmin -u USERNAME -h HOSTNAME password 'NEW_PASS' -p
2、SET PASSWORD FOR 'USERNAME'@'HOST'=PASSWORD('new_pass');
3、UPDATE mysql.user SET PASSWORD=PASSWORD('new_pass') WHERE CONDITION;
刪除使用者:
drop user " "@" ";
在編譯安裝mysql之前需要安裝cmake,為官網下載
我這裡下載的版本為cmake-3.6.1.tar.gz
 tar -xzvf cmake-3.6.1.tar.gz
 cd cmake-3.6.1
 ./configure
 make && make install
編譯安裝mysql-5.6.31.tar:http://mirrors.sohu.com/mysql/MySQL-5.6/
1、groupadd -r -g 308 mysql
2、useradd -g 308 -r -u 308 mysql
3、mkdir -pv /mydata/data(存放資料的目錄)
4、chown -R mysql.mysql /mydata/data
5、tar -xzvf mysql-5.6.31.tar.gz
6、cd mysql-5.6.31
7、 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
          -DMYSQL_DATADIR=/mydata/data \
          -DSYSCONFDIR=/etc \
 -DWITH_INNOBASE_STORAGE_ENGINE=1 \
          -DWITH_ARCHIVE_STORAGE_ENGINE=1 \
          -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
 -DWITH_READLINE=1 \
 -DWITH_SSL=system \
 -DWITH_ZLIB=system \
 -DWITH_LIBWRAP=0 \
 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
 -DDEFAULT_CHARSET=utf8 \
          -DDEFAULT_COLLATION=utf8_general_ci
(如果這裡出現這個問題 Could NOT find Curses (missing:  CURSES_LIBRARY CURSES_INCLUDE_PATH)
解決辦法:
yum -y install ncurses-devel
rm -f CMakeLists.txt
重新解壓mysql。
8、make && make install
9、cd /usr/local/mysql/
10、chown -R :mysql .
11、scripts/mysql_install_db --user=mysql --datadir=/mydata/data
12、cp support-files/mysql.server  /etc/init.d/mysqld
13、chkconfig mysqld --add
14 、vim /etc/profile.d/mysql.sh添加export PATH=$PATH:/usr/local/mysql/bin
15、 source /etc/profie.d/mysql.sh
16、修改設定檔
-------------------------------------------------------------------------------------------------------------------
安裝補充:
cmake指定編譯選項的方式不同於make,其實現方式對比如下:
./configure          cmake .
./configure --help    cmake . -LH or ccmake .
指定安裝檔案的安裝路徑時常用的選項:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_DATADIR=/data/mysql
-DSYSCONFDIR=/etc
預設編譯的儲存引擎包括:csv、myisam、myisammrg和heap。若要安裝其它儲存引擎,可以使用類似如下編譯選項:
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_FEDERATED_STORAGE_ENGINE=1
若要明確指定不編譯某儲存引擎,可以使用類似如下的選項:
-DWITHOUT__STORAGE_ENGINE=1
比如:
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
如若要編譯進其它功能,如SSL等,則可使用類似如下選項來實現編譯時間使用某庫或不使用某庫:
-DWITH_READLINE=1
-DWITH_SSL=system
-DWITH_ZLIB=system
-DWITH_LIBWRAP=0
其它常用的選項:
-DMYSQL_TCP_PORT=3306
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock
-DENABLED_LOCAL_INFILE=1
-DEXTRA_CHARSETS=all
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DWITH_DEBUG=0
-DENABLE_PROFILING=1
如果想清理此前的編譯所產生的檔案,則需要使用如下命令:
make clean
rm CMakeCache.txt
-------------------------------------------------------------------------------------------------------------------
到此為止mysql已經安裝好
[root@bkjia mysql]# mysql串連資料庫

show databases;(查看資料庫)

show engines;(查看搜尋引擎)

查看使用者資訊:
use mysql;
select User,Host,Password from user;

刪除使用者:(已刪除匿名使用者為例)
use mysql;
drop user ""@"localhost";
修改密碼:
use mysql;
update user set password=password(147852) where user='root';


MyISAM:
 每表三個檔案:
  .frm: 表結構
  .MYD:表資料
  .MYI:表索引
InnoDB:
 所有表共用一個資料表空間檔案;
 建議:每表一個獨立的資料表空間檔案;
  .frm: 表結構
  .ibd: 資料表空間(表資料和表索引)
針對於unix如果mysql與mysqld在同一個主機上,會通過mysql.sock通訊
針對於windows mysql與msqld在同一主機上,會通過共用記憶體或者管道進行通訊
如果不在同一台主機會通過tcp/ip協議進行通訊
MySQL用戶端工具:
mysql
mysqldump
mysqladmin
mysqlcheck
mysqlimport
MySQL非用戶端工具
myisamchk
myisampack

本文永久更新連結地址:

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.