ããå¦ä½å¨linuxä¸å®è£ mysqlæ°æ®åºå¹¶é ç½®
å
³äºæ¬æ
ããæ¬æå°ä»¥MySQL 5.0.51为ä¾ï¼ä»¥CentOS 5为平å°ï¼è®²è¿°MySQLæ°æ®åºçå®è£ å设置ã
ãã2. å ³äºMySQL
ããMySQLæ¯ææµè¡çå¼æºSQLæ°æ®åºç®¡çç³»ç»ï¼å®ç±MySQL ABå¼åãåå¸åæ¯æãMySQL ABæ¯ä¸å®¶ç±MySQLå¼å人åå建çåä¸å ¬å¸ï¼å®æ¯ä¸å®¶ä½¿ç¨äºä¸ç§æåçåä¸æ¨¡å¼æ¥ç»åå¼æºä»·å¼åæ¹æ³è®ºç第äºä»£å¼æºå ¬å¸ãMySQLæ¯MySQL ABç注ååæ ã
ããMySQLæ¯ä¸ä¸ªå¿«éçãå¤çº¿ç¨ãå¤ç¨æ·åå¥å£®çSQLæ°æ®åºæå¡å¨ãMySQLæå¡å¨æ¯æå ³é®ä»»å¡ãéè´è½½ç产系ç»ç使ç¨ï¼ä¹å¯ä»¥å°å®åµå ¥å°ä¸ä¸ªå¤§é ç½®(mass-deployed)ç软件ä¸å»ã
ããMySQLçå®æ¹åé³æ¯âMy Ess Que Ellâï¼èä¸æ¯âMy sequelâãä½æ¯ä½ ä¹å¯ä»¥ä½¿ç¨âMy sequelâåå ¶ä»çæ¹è¨ã
ããMySQLç½ç«(http://www.mysql.com)æä¾äºå ³äºMySQLåMySQL ABçææ°çæ¶æ¯ã
ããMySQLå ·æå¦ä¸ç¹ç¹æç¹æ§ï¼
ããMySQLæ¯ä¸ä¸ªæ°æ®åºç®¡çç³»ç»ï¼
ããMySQLæ¯ä¸ä¸ªå ³ç³»æ°æ®åºç®¡çç³»ç»ï¼
ããMySQLæ¯å¼æºçï¼
ããMySQLæå¡å¨æ¯ä¸ä¸ªå¿«çãå¯é çåæäºä½¿ç¨çæ°æ®åºæå¡å¨ï¼
ããMySQLæå¡å¨å·¥ä½å¨å®¢æ·/æå¡å¨æåµå ¥ç³»ç»ä¸ï¼
ããæ大éçMySQL软件å¯ä»¥ä½¿ç¨ã
ãã3. MySQLçå®è£
ããMySQLæ两ç§å®è£ æ¹å¼ï¼æºç å å®è£ åäºè¿å¶å å®è£ ãè¿ä¸¤ç§æ¹å¼åæç¹è²ï¼äºä½å¶å å®è£ ä¸éç¼è¯ï¼é对ä¸åçå¹³å°æç»è¿ä¼åç¼è¯çä¸åçäºè¿å¶æ件以åå æ ¼å¼ï¼å®è£ ç®åæ¹ä¾¿ï¼æºç å åå¿ é¡»å é ç½®ç¼è¯åå®è£ ï¼å¯ä»¥æ ¹æ®ä½ æç¨ç主æºç¯å¢è¿è¡ä¼åï¼éæ©æä½³çé ç½®å¼ï¼å®è£ å®å¶æ´çµæ´»ãä¸é¢åå«ä»ç»è¿ä¸¤ç§å®è£ æ¹å¼ã
ãã3.1 æºç å æ¹å¼å®è£
ãã3.1.1 å¨linuxç³»ç»ä¸æ·»å è¿è¡Mysqlçç¨æ·åç»
ãã/usr/sbin/groupadd mysql
ãã/usr/sbin/useradd -d /var/lib/mysql -s /sbin/nologin -g mysql mysql
ãã3.1.2 ä¸è½½ææ°ç¨³å®åè¡ç(GA)çMySQL软件
ãã访é®MySQLç½ç«http://dev.mysql.com/downloads/ä¸è½½ææ°ç¨³å®åè¡ççMySQLæºç å ãæ¬æ使ç¨çæ¯5.0.51çæ¬ï¼å¨linuxç³»ç»ä¸ç¨ä¸é¢çå½ä»¤ä¸è½½ï¼
ããwget http://mysql.mirror.kangaroot.net/Downloads/MySQL-5.0/mysql-5.0.51.tar.gz
ãã3.1.3 解å缩ä¸è½½çæºç å
ããé¦å 建ç«ä¸ä¸ªå·¥ä½ç®å½( ç¬è 建议çç®å½ä¸º/usr/local/src/mysql ) ï¼
ããmkdir -p /usr/local/src/mysql
ããå°ä¸è½½çæºç å 移è³å·¥ä½ç®å½ï¼
ããmv mysql-5.0.51.tar.gz /usr/local/src/mysql
ããè¿å ¥å·¥ä½ç®å½å¹¶ç¨tarå½ä»¤è§£åæºç å ï¼
ããcd /usr/local/src/mysql
ããtar zxvf mysql-5.0.51.tar.gz
ããå½ä»¤æ§è¡ç»æåï¼å½åå·¥ä½ç®å½ä¸å°çæä¸ä¸ªæ°çåç®å½mysql-5.0.51ï¼æ¤ç®å½ä¸å³ä¸ºmysqlçæºç æ件ã
ãã3.1.4 é ç½®Makefileæ件
ããè¿å ¥MySQLæºç ç®å½ï¼
ããcd mysql-5.0.51
ããæ§è¡ä¸é¢çå½ä»¤å¯æ¥çå¯é ç½®é项ï¼
ãã./configure --help
ããæ¬æ使ç¨çé ç½®å½ä»¤æ ¼å¼å¦ä¸ï¼
ããCC=gcc CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local/mysql --enable-thread-safe-client --enable-assembler --with-big-tables --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=complex
ããé ç½®é项说æï¼
ããCCï¼Cç¼è¯å¨çå称ï¼ç¨äºè¿è¡configureï¼ï¼æ¬æ示ä¾ä¸ºgcc
ããCFLAGSï¼Cç¼è¯å¨çæ å¿ï¼ç¨äºè¿è¡configureï¼ï¼æ¬æ示ä¾ä¸º-O3ï¼æå®ä¼å级å«ä¸º3
ããCXXï¼C++ç¼è¯å¨çå称ï¼ç¨äºè¿è¡configureï¼ï¼æ¬æ示ä¾ä¸ºgcc
ããCXXFLAGSï¼C++ç¼è¯å¨çæ å¿ï¼ç¨äºè¿è¡configureï¼
ãã--prefixï¼æå®å®è£ ç®å½ï¼æ¬æ示ä¾ä¸º/usr/local/mysql
ãã--localstatedirï¼æå®é»è®¤æ°æ®åºæ件ä¿åç®å½ï¼é»è®¤ä¸ºå®è£ ç®å½ä¸çvarç®å½
ãã--enable-thread-safe-clientï¼ç¼è¯çº¿ç¨å®å ¨ççMySQL客æ·ç«¯åº
ãã--enable-assemblerï¼ä½¿ç¨ä¸äºå符å½æ°çæ±ç¼çæ¬
ãã--with-client-ldflagsï¼å®¢æ·ç«¯é¾æ¥åæ°ï¼æ¬æ示ä¾ä¸ºæå®éæç¼è¯mysql客æ·ç«¯
ãã--with-mysqld-ldflagsï¼æå¡å¨ç«¯é¾æ¥åæ°ï¼æ¬æ示ä¾ä¸ºæå®éæç¼è¯mysqlæå¡å¨
ãã--with-big-tablesï¼å¨32ä½å¹³å°ä¸æ¯æ大äº4Gè¡ç表
ãã--with-charsetï¼æå®é»è®¤å符éãmysqlé»è®¤ä½¿ç¨latin1(cp1252)å符éï¼å¯ä»¥ä½¿ç¨æ¤é项æ´æ¹ãå符éå¯ä»¥æ¯big5ãcp1251ãcp1257ãczechãdanishãdec8ãdosãeuc_krãgb2312ãgbkãgerman1ãhebrewãhp8ãhungarianãkoi8_ruãkoi8_ukrãlatin1ãlatin2ãsjisãswe7ãtis620ãujisãusa7æwin1251ukrã
ãã--with-collationï¼æå®é»è®¤æ ¡å¯¹è§åãmysqlé»è®¤ä½¿ç¨latin1_swedish_ciæ ¡å¯¹è§åï¼å¯ä»¥ä½¿ç¨æ¤é项æ´æ¹ã
ãã--with-extra-charsetsï¼æå¡å¨éè¦æ¯æçå符éï¼æä¸ç§å¯è½çå¼ï¼ç©ºæ ¼é´éçä¸ç³»åå符éåï¼complex ï¼å æ¬ä¸è½å¨æè£ è½½çææå符éï¼allï¼å°ææå符éå æ¬è¿äºè¿å¶ãæ¬æ示ä¾ä¸ºcomplexã
ãã注æï¼è¦æ³æ´æ¹å符éåæ ¡å¯¹è§åï¼è¦åæ¶ä½¿ç¨--with-charsetå--with-collationé项ã æ ¡å¯¹è§åå¿ é¡»æ¯å符éçåæ³æ ¡å¯¹è§åã(å¨mysqlä¸ä½¿ç¨SHOW COLLATIONè¯å¥æ¥ç¡®å®æ¯ä¸ªå符é使ç¨åªä¸ªæ ¡å¯¹è§å)ã
ãã3.1.5 ç¼è¯æºä»£ç
ããæ§è¡ä¸é¢çå½ä»¤ç¼è¯æºä»£ç ï¼
ããmake
ãã3.1.6 å®è£
ããæ§è¡ä¸é¢çå½ä»¤å®è£ mysqlå°ç®æ è·¯å¾ï¼
ããmake install
ãã3.1.7 å¤å¶é»è®¤å ¨å±å¯å¨åæ°é ç½®æ件å°/etcç®å½
ããæºç æ¹å¼å®è£ éè¦æå¨å¤å¶é ç½®æ件ï¼é 置模æ¿ä½äºæºç æ çsupport-filesç®å½ï¼æmy-small.cnfãmy-medium.cnfãmy-large.cnfãmy-huge.cnfå个ï¼éæ©è·ä½ çç¯å¢ç¸æ¥è¿çä¸ä¸ªå¤å¶å°/etcç®å½ï¼å¹¶åéå½ä¿®æ¹ãå ³äºmysqlé ç½®æ件ç详ç»ä¿¡æ¯è¯·åé ç¬è çå ¶å®æç« ææ¯mysqlå®æ¹ææ¡£ã
ããæ¬æ示ä¾éæ©my-medium.cnfï¼æ§è¡ä¸é¢çå½ä»¤å°å ¶å¤å¶å°/etcç®å½ï¼
ããcp ./support-files/my-medium.cnf /etc/my.cnf
ãã3.1.8 åå§åææ表
ããæ§è¡ä¸é¢çå½ä»¤åå§åææ表ï¼
ãã./scripts/mysql_install_db --user=mysql
ãã3.1.9 æ´æ¹mysqlæ°æ®ç®å½å±ä¸»åæé
ããé»è®¤æ°æ®åºæ件ä¿åç®å½ä¸ºå®è£ ç®å½ä¸çvarç®å½ï¼æ§è¡configureå½ä»¤æ¶å¯éè¿--localstatediråæ°æå®ä¸åçç®å½ï¼æ¬æ示ä¾ä¸ºé»è®¤ä½ç½®ã
ããchown -R mysql.mysql /usr/local/mysql/var
ããchmod -R 700 /usr/local/mysql/var
ãã3.1.10 设置å¼æºèªå¯å¨æå¡æ§å¶èæ¬
ããæ§è¡ä¸é¢çå½ä»¤å¤å¶å¯å¨èæ¬å°èµæºç®å½ï¼
ããcp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
ããæ§è¡ä¸é¢çå½ä»¤å¢å mysqldæå¡æ§å¶èæ¬æ§è¡æéï¼
ããchmod +x /etc/rc.d/init.d/mysqld
ããæ§è¡ä¸é¢çå½ä»¤å°mysqldæå¡å å ¥å°ç³»ç»æå¡ï¼
ããchkconfig --add mysqld
ããæ§è¡ä¸é¢çå½ä»¤æ£æ¥mysqldæå¡æ¯å¦å·²ç»çæï¼
ããchkconfig --list mysqld
ããå½ä»¤è¾åºç±»ä¼¼ä¸é¢çç»æï¼
ããmysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
ãã表æmysqldæå¡å·²ç»çæï¼å¨2ã3ã4ã5è¿è¡çº§å«éç³»ç»å¯å¨èèªå¨å¯å¨ï¼ä»¥åå¯ä»¥ä½¿ç¨serviceå½ä»¤æ§å¶mysqlçå¯å¨ååæ¢ã
ããå¯å¨mysqldæå¡ï¼
ããservice mysqld start
ããåæ¢mysqldæå¡ï¼
ããservice mysqld stop
ããæ§è¡ä¸é¢çå½ä»¤å ³éå¼æºèªå¯å¨ï¼
ããchkconfig mysqld off
ããæ§è¡ä¸é¢çå½ä»¤å¯ä»¥æ¹åå¼æºèªå¯å¨çè¿è¡çº§å«ä¸º3ã5ï¼
ããchkconfig --level 35 mysqld on
ãã3.1.11 å°mysqlçbinç®å½å å ¥PATHç¯å¢åé
ããç¼è¾/etc/profileæ件ï¼
ããvi /etc/profile
ããå¨æ件æåæ·»å å¦ä¸ä¸¤è¡ï¼
ããPATH=$PATH:/usr/local/mysql/bin
ããexport PATH
ããæ§è¡ä¸é¢çå½ä»¤ä½¿æåçæ´æ¹çæï¼
ãã. /etc/profile
ãã3.2 äºè¿å¶å æ¹å¼å®è£
ãã3.2.1 ä»å®è£ åªä½å®è£
ããMysqläºè¿å¶å å·²ç»å å«å¨CentOS 5çå®è£ åªä½ä¸ï¼å¯ä»¥ç´æ¥ä»å®è£ åªä½ä¸å®è£ ä¸é¢ä¸ä¸ªrpmå ï¼
ããmysql-5.0.22-2.1.0.1.i386.rpm
ããmysql-devel-5.0.22-2.1.0.1.i386.rpm
ããmysql-server-5.0.22-2.1.0.1.i386.rpm
ããä¸åççæ¬æ件åææä¸åï¼è¯·æ³¨æåºåã
ããæ§è¡ä¸é¢çå½ä»¤å®è£ ï¼
ããrpm -iUvh mysql-5.0.22-2.1.0.1.i386.rpm
ããrpm -iUvh mysql-devel-5.0.22-2.1.0.1.i386.rpm
ããrpm -iUvh mysql-server-5.0.22-2.1.0.1.i386.rpm
ãã3.2.2 éè¿yumå®è£
ããå¦æä½ å®è£ çæºå¨æ¤æ¶å¯ä»¥è¿æ¥å°äºèç½ï¼ç¬è 建议使ç¨yumå½ä»¤æ¥ç®åå®è£ è¿ç¨ï¼
ããyum install mysql-server mysql-devel mysql
ããyumå°èªå¨ä»centosçéåç«ç¹æ¥æ¾ä½ ææç软件çææ°äºè¿å¶å ï¼å¹¶æ£æ¥è½¯ä»¶å ä¾èµå ³ç³»ï¼å®è£ 软件çåæ¶èªå¨å®è£ å ¶ä¾èµç软件å ã
ãã3.2.3 ä»mysqlç½ç«ä¸è½½ææ°ç¨³å®çæ¬çäºè¿å¶å å®è£
ããéè¿CentOSå®è£ åªä½æyumå®è£ çäºè¿å¶å çæ¬ä¼è½åäºmysqlå¼åè ç½ç«åå¸ççæ¬ï¼å¯ä»¥ä»mysqlç½ç«ä¸è½½å®è£ ææ°ç¨³å®çæ¬çmysqlã
ãã访é®MySQLç½ç«http://dev.mysql.com/downloads/ä¸è½½ææ°ç¨³å®åè¡ççç¸åºç¡¬ä»¶å¹³å°çMySQLãæ¬æ使ç¨çæ¯Red Hat Enterprise Linux 5 RPM (x86) 5.0.45çæ¬ãéè¦ä¸è½½ServerãClientãHeaders and LibrariesãShare Libraries/Shared compatibility librarieså 个rpmå ï¼å ¶å®ä¸ºå¯éå ï¼æéè¦éæ©ã
ããå¨linuxç³»ç»ä¸ç¨ä¸é¢çå½ä»¤ä¸è½½ï¼
ããwget http://mysql.mirrors.pair.com/Downloads/MySQL-5.0/MySQL-server-community-5.0.45-0.rhel5.i386.rpm
ããwget http://mysql.mirrors.pair.com/Downloads/MySQL-5.0/MySQL-client-community-5.0.45-0.rhel5.i386.rpm
ããwget http://mysql.mirrors.pair.com/Downloads/MySQL-5.0/MySQL-devel-community-5.0.45-0.rhel5.i386.rpm
ããwget http://mysql.mirrors.pair.com/Downloads/MySQL-5.0/MySQL-shared-community-5.0.45-0.rhel5.i386.rpm
ããwget http://mysql.mirrors.pair.com/Downloads/MySQL-5.0/MySQL-shared-compat-5.0.45-0.rhel5.i386.rpm
ããæ§è¡ä¸é¢çå½ä»¤å®è£ ï¼
ããrpm -iUvh MySQL-server-community-5.0.45-0.rhel5.i386.rpm
ããrpm -iUvh MySQL-client-community-5.0.45-0.rhel5.i386.rpm
ããrpm -iUvh MySQL-devel-community-5.0.45-0.rhel5.i386.rpm
ããrpm -iUvh MySQL-shared-community-5.0.45-0.rhel5.i386.rpm
ããrpm -iUvh MySQL-shared-compat-5.0.45-0.rhel5.i386.rpm
ãã4. MySQLçé ç½®
ãã4.1 ç®å½ç»æ
ãã4.1.1 æºç å æ¹å¼å®è£ ç®å½ç»æ
ããæºç å æ¹å¼å®è£ æ¶é常æ¯å¨3.1.4èä¸configureå½ä»¤ç--prefixé项æå®çç®å½ä¸å»ºç«å¦ä¸çç®å½ç»æï¼ç¹æ®æå®çç®å½é¤å¤ï¼
ãã./bin #mysqlç¨æ·å¯æ§è¡æ件ç®å½
ãã./include/mysql #mysql C头æ件ç®å½
ãã./info #mysql ä¿¡æ¯æ件ç®å½
ãã./lib/mysql #mysqlåºæ件ç®å½
ãã./libexec #mysqlåå°daemonç¨åºç®å½
ãã./man #mysqlèæºå¸®å©ææ¡£ç®å½
ãã./mysql-test #mysqlæµè¯ç¨åºç®å½
ãã./share/mysql #mysqlå ¬ç¨æ件ç®å½ï¼å æ¬å符éãé ç½®æ件模æ¿ãå¯å¨èæ¬ãåå§åSQLæ件ç
ãã./sql-bench #mysqlååæµè¯ç¨åºç®å½
ãã/etc/my.cnf #mysqlé ç½®æ件
ãã/etc/rc.d/init.d/mysqld #mysqldæå¡å¯å¨èæ¬
ãã4.1.2 RPMäºè¿å¶å æ¹å¼å®è£ ç®å½ç»æ
ããäºè¿å¶å æ¹å¼å®è£ æ¶ä½¿ç¨ç³»ç»è½¯ä»¶é»è®¤ç®å½ç»æ ï¼
ãã/usr/bin #mysqlç¨æ·å¯æ§è¡æ件ç®å½
ãã/usr/libexec #mysqlåå°daemonç¨åºç®å½
ãã/usr/lib/mysql #mysqlåºæ件ç®å½
ãã/usr/lib64/mysql #å¦æ为64ç³»ç»ï¼mysql 64ä½åºæ件ç®å½
ãã/usr/share/doc #mysqlææ¡£ç®å½
ãã/usr/share/info #mysqlä¿¡æ¯æ件ç®å½
ãã/usr/share/man #mysqlèæºå¸®å©ææ¡£ç®å½
ãã/usr/share/mysql #mysqlå符éç®å½
ãã/usr/include/mysql #mysql C头æ件ç®å½
ãã/var/log #mysqldæå¡æ¥å¿æ件ç®å½
ãã/var/run/mysqld #mysqldæå¡è¿è¡ç¶æç®å½
ãã/var/lib/mysql #mysqlæ°æ®æ件ç®å½
ãã/etc/my.cnf #mysqlé ç½®æ件
ãã/etc/rc.d/init.d/mysqld #mysqldæå¡å¯å¨èæ¬
ãã
ãã4.2 é ç½®æ件
ããLinuxç³»ç»ä¸ï¼mysqlçé ç½®åæ°æ件为my.cnfï¼ä¸è¬æä¸é¢ç顺åºæ¥æ¾æ¤æ件ï¼/etcç®å½ãmysqlå®è£ ç®å½ãmysqlæ°æ®ç®å½ãé 置模æ¿ä½äºæºç æ çsupport-filesç®å½ï¼æmy-small.cnfãmy-medium.cnfãmy-large.cnfãmy-huge.cnfå个ï¼å ³äºmysqlé ç½®æ件ç详ç»ä¿¡æ¯è¯·åé ç¬è çå ¶å®æç« ææ¯mysqlå®æ¹ææ¡£ã
ãã4.3 å¯å¨mysqldæå¡
ããæ§è¡ä¸é¢çå½ä»¤å¯å¨mysqlï¼
ããservice mysqld start
ãã4.3 设置mysqlå¸å·
ããmysqlå®è£ åé»è®¤çæ两个å¸å·ï¼ä¸ä¸ªæ¯rootï¼æªè®¾ç½®å¯ç ï¼å¯ä»¥ä»æ¬æºç»å½å°mysqlï¼å¦ä¸ä¸ªæ¯å¿åå¸å·ï¼æ å¸å·åãæ å¯ç ï¼å¯ä»¥ä»æ¬æºç»å½ï¼æªæä¾ç¨æ·åçè¿æ¥é½å°åå®ä¸ºæ¤å¸å·ãè¿æ ·ç设置åå¨çå®å ¨éæ£ï¼æä¸é¢çæ¥éª¤è¿è¡æ´æ¹ã
ãã以rootå¸å·è¿æ¥å°mysqlæå¡å¨ï¼
ããmysql -u root
ããå¦ææ示æ¾ä¸å°mysqlæ件ï¼è¯·å°è¯ä½¿ç¨ç»å¯¹è·¯å¾ï¼å¦æ¬æ示ä¾ä¸ºï¼
ãã/usr/local/mysql/bin/mysql -u root
ããå½ä»¤æåæ§è¡åå°è¿å ¥å°mysqlå½ä»¤æ示符ä¸ï¼
ããmysql>
ããï¼ä»¥ä¸å½ä»¤åå¨mysqlå½ä»¤æ示符ä¸æ§è¡ï¼
ããæ¹åå½åæ°æ®åºä¸ºmysqlï¼
ããuse mysql
ãã设置ä»æ¬å°ä¸»æºç»å½çrootå¸å·å¯ç ï¼
ããset password for root@localhost=password('your password');
ããæï¼
ããupdate user set password=password('your password') where user='root' and host='localhost';
ããå é¤å¿åå¸å·ï¼
ããdelete from user where user='' ;
ããå é¤å¯ç 为空çå¸å·ï¼
ããdelete from user where password='';
ããå é¤å 许élocalhost主æºç»å½çå¸å·ï¼
ããdelete from user where host<>'localhost' ;
ããæ§è¡ä¸é¢çå½ä»¤ä½¿æ´æ¹çæï¼
ããflush privileges ;
ããæ§è¡ä¸é¢çå½ä»¤éåºmysqlå½ä»¤è¡ï¼
ããquit
ããæï¼
ãã/q
ãã5. ç»æè¯
ããè³æ¤ï¼Mysqlåºæ¬å®è£ å®æ¯ãå¸ææ¬æè½å¯¹åå¦è ææ帮å©ã
安装oracle 监听器 配置数据库