I tried to connect ORCL using Shared Server process in MTS.

Problem:

SQL> connect scott/tiger@orcl_shared
ERROR:
ORA-12520: TNS:listener could not find available handler for requested type of server


Warning: You are no longer connected to ORACLE.

Why?

============

Here is my init.ora


db_name = "orcl"
instance_name = ORCL

db_domain = acme.com
service_names = orcl.acme.com, oracle81.acme.com

db_files = 1024 # INITIAL
# db_files = 80 # SMALL
# db_files = 400 # MEDIUM
# db_files = 1500 # LARGE

control_files = ("C:\Oracle\oradata\ORCL\control01.ctl", "C:\Oracle\oradata\ORCL\control02.ctl", "C:\Oracle\oradata\ORCL\control03.ctl")
#, "C:\Oracle\demo\control04.ctl")

open_cursors = 100
max_enabled_roles = 30
db_file_multiblock_read_count = 8 # INITIAL
# db_file_multiblock_read_count = 8 # SMALL
# db_file_multiblock_read_count = 16 # MEDIUM
# db_file_multiblock_read_count = 32 # LARGE

#db_block_buffers = 2048 # INITIAL
# db_block_buffers = 100 # SMALL
# db_block_buffers = 550 # MEDIUM
# db_block_buffers = 3200 # LARGE

##########################

DB_BLOCK_BUFFERS = 1000
DB_BLOCK_LRU_LATCHES = 6
BUFFER_POOL_KEEP = (buffers:200, lru_latches:2)
BUFFER_POOL_RECYCLE = (buffers:300, lru_latches:2)

##########################




#shared_pool_size = 15728640 # INITIAL
shared_pool_size = 3500000 # SMALL
# shared_pool_size = 5000000 # MEDIUM
# shared_pool_size = 9000000 # LARGE

large_pool_size = 614400
java_pool_size = 20971520

log_checkpoint_interval = 10000
log_checkpoint_timeout = 1800

processes = 28 # INITIAL
# processes = 50 # SMALL
# processes = 100 # MEDIUM
# processes = 200 # LARGE

parallel_max_servers = 5 # SMALL
# parallel_max_servers = 4 x (number of CPUs) # MEDIUM
# parallel_max_servers = 4 x (number of CPUs) # LARGE

log_buffer = 32768 # INITIAL
# log_buffer = 32768 # SMALL
# log_buffer = 32768 # MEDIUM
# log_buffer = 163840 # LARGE

audit_trail = true # if you want auditing
#timed_statistics = true # if you want timed statistics
max_dump_file_size = 10240 # limit trace file size to 5M each

# Uncommenting the line below will cause automatic archiving if archiving has
# been enabled using ALTER DATABASE ARCHIVELOG.
log_archive_start = true
log_archive_dest_1 = "location=C:\Oracle\oradata\ORCL\archive"
log_archive_format = %%ORACLE_SID%%T%TS%S.ARC

# If using private rollback segments, place lines of the following
# form in each of your instance-specific init.ora files:
#rollback_segments = ( RBS0, RBS1, RBS2, RBS3, RBS4, RBS5, RBS6 )

# If using public rollback segments, define how many
# rollback segments each instance will pick up, using the formula
# # of rollback segments = transactions / transactions_per_rollback_segment
# In this example each instance will grab 40/5 = 8
# transactions = 40
# transactions_per_rollback_segment = 5

# Global Naming -- enforce that a dblink has same name as the db it connects to
global_names = true

# Edit and uncomment the following line to provide the suffix that will be
# appended to the db_name parameter (separated with a dot) and stored as the
# global database name when a database is created. If your site uses
# Internet Domain names for e-mail, then the part of your e-mail address after
# the '@' is a good candidate for this parameter value.
# db_domain = us.acme.com # global database name is db_name.db_domain

# Uncomment the following line if you wish to enable the Oracle Trace product
# to trace server activity. This enables scheduling of server collections
# from the Oracle Enterprise Manager Console.
# Also, if the oracle_trace_collection_name parameter is non-null,
# every session will write to the named collection, as well as enabling you
# to schedule future collections from the console.
# oracle_trace_enable = true

oracle_trace_collection_name = ""
# define directories to store trace and alert files
background_dump_dest = C:\Oracle\admin\ORCL\bdump
#Uncomment this parameter to enable resource management for your database.
#The SYSTEM_PLAN is provided by default with the database.
#Change the plan name if you have created your own resource plan.# resource_manager_plan = system_plan
user_dump_dest = C:\Oracle\admin\ORCL\udump

db_block_size = 8192

remote_login_passwordfile = exclusive
#remote_login_passwordfile = none

os_authent_prefix = ""

# The following parameters are needed for the Advanced Replication Option
job_queue_processes = 4
job_queue_interval = 10
open_links = 4

distributed_transactions = 500
#mts_dispatchers = "(PROTOCOL=TCP)(PRE=oracle.aurora.server.SGiopServer)"
# Uncomment the following line when your listener is configured for SSL
# (listener.ora and sqlnet.ora)
# mts_dispatchers = "(PROTOCOL=TCPS)(PRE=oracle.aurora.server.SGiopServer)"

mts_listener_address="(ADDRESS = (PROTOCOL = TCP)\
(HOST = lvinjex)(PORT = 1521))"
mts_dispatchers="(address=(protocol=tcp)(host=lvinjex))(dispatchers=2)"
compatible = 8.1.0
sort_area_size = 65536
sort_area_retained_size = 65536
UTL_FILE_DIR = C:\Oracle\oradata\ORCL